/* ============================================================
   PUBLIC PAGES THEME — mirrors the landing page (Welcome.vue):
   light airy background, single violet accent, pastel cards,
   Plus Jakarta Sans, rounded cards, generous whitespace.
   Scope everything under .lp-page so the in-app pages are untouched.
   ============================================================ */
.lp-page {
  --bg: #f4f3f8;
  --card: #ffffff;
  --ink: #1f2933;
  --muted: #6b7280;
  --violet: #2b82f0;
  --violet-hover: #1a6fdc;
  --lav: #dcd2f5;
  --peach: #e7d4c9;
  --mint: #cfe4dd;
  --skyblue: #c9def4;
  --dark: #1b2430;
  --line: rgba(31, 41, 51, 0.08);
  --radius: 28px;
  --radius-sm: 18px;
  --pill: 999px;
  --shadow: 0 24px 60px -34px rgba(31, 41, 51, 0.3);

  min-height: 100vh;
  background: var(--bg);
  color: var(--ink);
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  -webkit-font-smoothing: antialiased;
  letter-spacing: -0.01em;
}

.lp-page *,
.lp-page *::before,
.lp-page *::after { box-sizing: border-box; }

.lp-page .lp-container { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
.lp-page .lp-narrow { max-width: 880px; margin: 0 auto; padding: 0 24px; }

/* ---- typography ---- */
.lp-page h1, .lp-page h2, .lp-page h3 { color: var(--ink); letter-spacing: -0.035em; font-weight: 600; line-height: 1.08; margin: 0; }
.lp-page p { margin: 0; }
.lp-page a { text-decoration: none; }

.lp-page .lp-eyebrow {
  display: inline-block; font-size: 13px; font-weight: 700;
  letter-spacing: 0.08em; text-transform: uppercase; color: var(--violet);
  margin-bottom: 16px;
}
.lp-page .lp-title { font-size: clamp(34px, 4.6vw, 56px); }
.lp-page .lp-h2 { font-size: clamp(28px, 3.6vw, 46px); }
.lp-page .lp-h3 { font-size: clamp(20px, 2vw, 26px); font-weight: 700; }
.lp-page .lp-lead { font-size: clamp(17px, 2vw, 21px); font-weight: 400; color: var(--muted); line-height: 1.55; }
.lp-page .lp-text { color: var(--muted); line-height: 1.6; font-size: 15.5px; }
.lp-page .lp-underline { position: relative; color: var(--violet); }

/* ---- sections ---- */
.lp-page .lp-section { padding: 70px 0; }
.lp-page .lp-section-sm { padding: 44px 0; }
.lp-page .lp-section-head { text-align: center; max-width: 720px; margin: 0 auto 48px; }
.lp-page .lp-section-head .lp-lead { margin-top: 14px; }

/* ---- hero ---- */
.lp-page .lp-hero { position: relative; padding: 64px 0 40px; text-align: center; overflow: hidden; }
.lp-page .lp-hero .lp-title { margin: 0 auto; max-width: 16ch; }
.lp-page .lp-hero .lp-lead { margin: 18px auto 0; max-width: 60ch; }

/* ---- buttons ---- */
.lp-page .lp-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 9px;
  padding: 14px 26px; border-radius: var(--pill); font-size: 15px; font-weight: 600;
  cursor: pointer; border: 1px solid transparent; transition: background 0.2s ease, transform 0.2s ease, border-color 0.2s ease, color 0.2s ease;
  letter-spacing: -0.01em; text-decoration: none;
}
.lp-page .lp-btn-primary { background: var(--violet); color: #fff; box-shadow: 0 16px 30px -16px rgba(43,130,240,0.6); }
.lp-page .lp-btn-primary:hover { background: var(--violet-hover); transform: translateY(-2px); }
.lp-page .lp-btn-secondary { background: #fff; color: var(--ink); border-color: var(--line); }
.lp-page .lp-btn-secondary:hover { border-color: var(--violet); color: var(--violet); transform: translateY(-2px); }
.lp-page .lp-btn-ghost { background: rgba(43,130,240,0.08); color: var(--violet); }
.lp-page .lp-btn-ghost:hover { background: rgba(43,130,240,0.14); }

/* ---- cards ---- */
.lp-page .lp-card {
  background: var(--card); border: 1px solid var(--line); border-radius: var(--radius-sm);
  padding: 30px; box-shadow: 0 26px 60px -38px rgba(31,41,51,0.32);
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}
.lp-page .lp-card:hover { transform: translateY(-6px); box-shadow: 0 34px 76px -34px rgba(31,41,51,0.38); }
.lp-page .lp-grid { display: grid; gap: 22px; }
.lp-page .lp-grid-2 { grid-template-columns: repeat(2, 1fr); }
.lp-page .lp-grid-3 { grid-template-columns: repeat(3, 1fr); }
.lp-page .lp-grid-4 { grid-template-columns: repeat(4, 1fr); }

/* colored icon tile (gradient) */
.lp-page .lp-ico {
  width: 56px; height: 56px; border-radius: 16px;
  display: inline-flex; align-items: center; justify-content: center;
  color: #fff; font-size: 22px; margin-bottom: 18px;
}
.lp-page .lp-ico.blue   { background: linear-gradient(150deg, #5aa2ff, #2b82f0); box-shadow: 0 14px 28px -10px rgba(43,130,240,0.6); }
.lp-page .lp-ico.green  { background: linear-gradient(150deg, #34d399, #10b981); box-shadow: 0 14px 28px -10px rgba(16,185,129,0.55); }
.lp-page .lp-ico.violet { background: linear-gradient(150deg, #a78bfa, #7c5cff); box-shadow: 0 14px 28px -10px rgba(124,92,255,0.55); }
.lp-page .lp-ico.amber  { background: linear-gradient(150deg, #fbbf24, #f59e0b); box-shadow: 0 14px 28px -10px rgba(245,158,11,0.55); }
.lp-page .lp-ico.cyan   { background: linear-gradient(150deg, #22d3ee, #06b6d4); box-shadow: 0 14px 28px -10px rgba(6,182,212,0.55); }
.lp-page .lp-ico.pink   { background: linear-gradient(150deg, #f472b6, #ec4899); box-shadow: 0 14px 28px -10px rgba(236,72,153,0.55); }

/* dark CTA card (like the landing CTA) */
.lp-page .lp-cta { position: relative; background: var(--dark); border-radius: var(--radius); padding: 72px 48px; text-align: center; overflow: hidden; color: #fff; }
.lp-page .lp-cta::before { content: ''; position: absolute; left: 50%; top: 50%; width: 760px; height: 760px; transform: translate(-50%, -50%); background: radial-gradient(circle, rgba(43,130,240,0.28), rgba(43,130,240,0) 62%); pointer-events: none; }
.lp-page .lp-cta > * { position: relative; z-index: 1; }
.lp-page .lp-cta h2 { color: #fff; font-size: clamp(30px, 4vw, 46px); margin: 0 0 14px; }
.lp-page .lp-cta p { color: rgba(255,255,255,0.66); font-size: clamp(16px,2vw,19px); margin: 0 auto 30px; max-width: 50ch; }

/* ---- reveal ---- */
.lp-page .reveal { opacity: 0; transform: translateY(40px); transition: opacity 0.7s cubic-bezier(0.22,0.7,0.2,1), transform 0.7s cubic-bezier(0.22,0.7,0.2,1); will-change: opacity, transform; }
.lp-page .reveal.in-view { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .lp-page .reveal { opacity: 1 !important; transform: none !important; } }

/* ============================================================
   NAVBAR / FOOTER — restyle to the light landing look,
   only when inside a .lp-page (in-app chrome stays as is).
   !important guarantees we beat the components' scoped styles.
   ============================================================ */
:is(.lp-page, .landing-page) .navbar,
:is(.lp-page, .landing-page) .navbar a,
:is(.lp-page, .landing-page) .navbar button,
:is(.lp-page, .landing-page) .navbar input { font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif; }

/* minimal flat navbar (contiant-style) — logo left, links pushed right, dark pill CTA */
:is(.lp-page, .landing-page) .navbar {
  background: rgba(244, 243, 248, 0.7) !important;
  border-bottom: none !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: saturate(160%) blur(14px); backdrop-filter: saturate(160%) blur(14px);
}
:is(.lp-page, .landing-page) .navbar .nav-content {
  background: transparent !important;
  border: none !important; box-shadow: none !important;
  padding: 22px 0 !important;
}
:is(.lp-page, .landing-page) .navbar .nav-icon { display: none !important; }
:is(.lp-page, .landing-page) .navbar .nav-links { margin-left: auto; gap: 34px !important; margin-right: 34px; }
:is(.lp-page, .landing-page) .nav-link {
  color: var(--muted) !important; font-weight: 500 !important; font-size: 15.5px !important;
  padding: 0 !important; background: none !important; border-radius: 0;
  transition: color 0.2s ease;
}
:is(.lp-page, .landing-page) .nav-link:hover,
:is(.lp-page, .landing-page) .nav-link.router-link-active { color: var(--ink) !important; background: none !important; }
:is(.lp-page, .landing-page) .language-btn { background: transparent !important; border: 1px solid var(--line) !important; color: var(--muted) !important; border-radius: var(--pill) !important; height: 40px !important; }
:is(.lp-page, .landing-page) .language-btn:hover { background: #fff !important; border-color: var(--ink) !important; color: var(--ink) !important; }
:is(.lp-page, .landing-page) .btn-nav-login { background: var(--dark) !important; color: #fff !important; border-radius: var(--pill) !important; box-shadow: none !important; padding: 12px 26px !important; font-weight: 600 !important; }
:is(.lp-page, .landing-page) .btn-nav-login:hover { background: #0e151f !important; transform: translateY(-1px); }
:is(.lp-page, .landing-page) .mobile-menu-btn { color: var(--ink) !important; }
:is(.lp-page, .landing-page) .nav-links.mobile-open { background: #fff !important; border-top: 1px solid var(--line) !important; }
:is(.lp-page, .landing-page) .language-dropdown { background: #fff !important; border: 1px solid var(--line) !important; box-shadow: var(--shadow) !important; border-radius: 14px !important; }

@media (max-width: 1024px) {
  :is(.lp-page, .landing-page) .navbar .nav-content { padding: 16px 0 !important; }
  :is(.lp-page, .landing-page) .navbar .nav-links { margin-left: 0; margin-right: 0; gap: 2px !important; }
  :is(.lp-page, .landing-page) .nav-links.mobile-open {
    background: #fff !important; border-top: 1px solid var(--line) !important;
    padding: 10px !important; border-radius: 0 0 20px 20px;
    box-shadow: 0 24px 50px -24px rgba(31,41,51,0.4) !important;
  }
  :is(.lp-page, .landing-page) .nav-links.mobile-open .nav-link {
    width: 100%; padding: 14px 16px !important; border-bottom: none !important;
    border-radius: 12px; font-size: 16px !important; font-weight: 600 !important;
    color: var(--ink) !important;
  }
  :is(.lp-page, .landing-page) .nav-links.mobile-open .nav-link:hover,
  :is(.lp-page, .landing-page) .nav-links.mobile-open .nav-link.router-link-active {
    background: rgba(43,130,240,0.08) !important; color: var(--violet) !important;
  }
}

.lp-page .footer { background: var(--bg) !important; border-top: 1px solid var(--line) !important; }
.lp-page .footer-logo img { filter: brightness(0) saturate(100%); }
.lp-page .footer-description { color: var(--muted) !important; }
.lp-page .footer-heading { color: var(--ink) !important; }
.lp-page .footer-links a, .lp-page .footer-links span { color: var(--muted) !important; }
.lp-page .footer-links a:hover { color: var(--violet) !important; }
.lp-page .social-icon { background: rgba(31,41,51,0.06) !important; color: var(--muted) !important; }
.lp-page .social-icon:hover { background: var(--violet) !important; color: #fff !important; }
.lp-page .footer-bottom { border-top-color: var(--line) !important; }
.lp-page .footer-bottom p { color: var(--muted) !important; }
.lp-page .footer-legal-links a { color: var(--muted) !important; }
.lp-page .footer-legal-links a:hover { color: var(--ink) !important; }

/* ---- responsive ---- */
@media (max-width: 1024px) {
  .lp-page .lp-grid-4 { grid-template-columns: repeat(2, 1fr); }
  .lp-page .lp-grid-3 { grid-template-columns: 1fr; }
  .lp-page .lp-grid-2 { grid-template-columns: 1fr; }
  .lp-page .lp-section { padding: 50px 0; }
  .lp-page .lp-cta { padding: 56px 24px; }
}
@media (max-width: 600px) {
  .lp-page .lp-grid-4 { grid-template-columns: 1fr; }
}

.container[data-v-5b15bdfa] {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}
.navbar[data-v-5b15bdfa] {
  border-bottom: 1px solid #e2e8f0;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  position: sticky;
  top: 0;
  z-index: 1000;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}
.nav-content[data-v-5b15bdfa] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 0;
}
.nav-logo[data-v-5b15bdfa] {
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
}
.nav-links[data-v-5b15bdfa] {
  display: flex;
  align-items: center;
  gap: 32px;
}
.mobile-menu-btn[data-v-5b15bdfa] {
  display: none;
  background: none;
  border: none;
  font-size: 24px;
  color: #64748b;
  cursor: pointer;
  padding: 8px;
  transition: color 0.2s ease;
}
.mobile-menu-btn[data-v-5b15bdfa]:hover {
  color: #1e293b;
}
.nav-link[data-v-5b15bdfa] {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #64748b;
  text-decoration: none;
  font-size: 15px;
  font-weight: 500;
  transition: color 0.2s ease;
}
.nav-link[data-v-5b15bdfa]:hover {
  color: #1e293b;
}
.nav-icon[data-v-5b15bdfa] {
  font-size: 16px;
}
.nav-actions[data-v-5b15bdfa] {
  display: flex;
  align-items: center;
  gap: 16px;
}
.language-selector[data-v-5b15bdfa] {
  position: relative;
}
.language-btn[data-v-5b15bdfa] {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 50px;
  height: 40px;
  padding: 0 12px;
  background: transparent;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  color: #64748b;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 14px;
  font-weight: 600;
}
.language-btn[data-v-5b15bdfa]:hover {
  background: #f8fafc;
  border-color: #0ea5e9;
  color: #0ea5e9;
}
.language-dropdown[data-v-5b15bdfa] {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  background: white;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  min-width: 150px;
  overflow: hidden;
  z-index: 1000;
}
.language-dropdown button[data-v-5b15bdfa] {
  width: 100%;
  padding: 12px 16px;
  background: white;
  border: none;
  color: #64748b;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
  text-align: left;
}
.language-dropdown button[data-v-5b15bdfa]:hover {
  background: #f8fafc;
  color: #1e293b;
}
.language-dropdown button.active[data-v-5b15bdfa] {
  background: #eff6ff;
  color: #0ea5e9;
  font-weight: 600;
}
.btn-contact-sales[data-v-5b15bdfa] {
  display: inline-block;
  padding: 8px 20px;
  background: transparent;
  color: #0ea5e9;
  border: 2px solid #0ea5e9;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.2s ease;
  margin-left: 8px;
}
.btn-contact-sales[data-v-5b15bdfa]:hover {
  background: #0ea5e9;
  color: white;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.btn-nav-login[data-v-5b15bdfa] {
  display: inline-block;
  padding: 10px 24px;
  background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%);
  color: white;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(14, 165, 233, 0.3);
}
.btn-nav-login[data-v-5b15bdfa]:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.4);
}
@media (max-width: 1024px) {
.mobile-menu-btn[data-v-5b15bdfa] {
    display: block;
}
.desktop-cta[data-v-5b15bdfa] {
    display: none;
}
.nav-links[data-v-5b15bdfa] {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 0;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    border-top: 1px solid #e2e8f0;
}
.nav-links.mobile-open[data-v-5b15bdfa] {
    display: flex;
}
.nav-link[data-v-5b15bdfa] {
    width: 100%;
    padding: 16px 24px;
    border-bottom: 1px solid #f1f5f9;
}
.nav-link[data-v-5b15bdfa]:hover {
    background: #f8fafc;
}
}
@media (max-width: 768px) {
.nav-content[data-v-5b15bdfa] {
    padding: 12px 0;
}
}

.container[data-v-cffded5f] {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
  position: relative;
}
.container[data-v-cffded5f]::before,
.container[data-v-cffded5f]::after {
  content: none;
}
.footer[data-v-cffded5f] {
  padding: 80px 0 40px;
  background: #1e293b;
  color: white;
  overflow: hidden;
  position: relative;
}
.footer[data-v-cffded5f]::before {
  content: none;
}
.footer[data-v-cffded5f]::after {
  content: none;
}
.footer-content[data-v-cffded5f] {
  display: grid;
  grid-template-columns: 300px 1fr;
  gap: 80px;
  margin-bottom: 60px;
}
.footer-left[data-v-cffded5f] {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.footer-logo[data-v-cffded5f] {
  display: flex;
  align-items: center;
  gap: 8px;
}
.footer-description[data-v-cffded5f] {
  color: rgba(255, 255, 255, 0.7);
  line-height: 1.6;
  font-size: 15px;
  margin: 0;
}
.footer-social[data-v-cffded5f] {
  display: flex;
  gap: 12px;
}
.social-icon[data-v-cffded5f] {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.7);
  transition: all 0.3s ease;
  text-decoration: none;
}
.social-icon[data-v-cffded5f]:hover {
  background: rgba(255, 255, 255, 0.15);
  color: white;
}
.footer-links-grid[data-v-cffded5f] {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}
.footer-column[data-v-cffded5f] {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.footer-heading[data-v-cffded5f] {
  font-size: 14px;
  font-weight: 700;
  margin: 0;
  color: white;
}
.footer-links[data-v-cffded5f] {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer-links li[data-v-cffded5f] {
  margin-bottom: 10px;
}
.footer-links a[data-v-cffded5f],
.footer-links span[data-v-cffded5f] {
  color: rgba(255, 255, 255, 0.6);
  text-decoration: none;
  font-size: 13px;
  transition: color 0.2s ease;
}
.footer-links a[data-v-cffded5f]:hover {
  color: white;
}
.footer-divider[data-v-cffded5f] {
  height: 1px;
  background: rgba(255, 255, 255, 0.1);
  margin-bottom: 40px;
}
.footer-bottom[data-v-cffded5f] {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 15px;
}
.footer-bottom p[data-v-cffded5f] {
  margin: 0;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.5);
}
.footer-legal-links[data-v-cffded5f] {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 13px;
}
.footer-legal-links a[data-v-cffded5f] {
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  transition: color 0.3s ease;
}
.footer-legal-links a[data-v-cffded5f]:hover {
  color: rgba(255, 255, 255, 1);
}
.footer-legal-links .separator[data-v-cffded5f] {
  color: rgba(255, 255, 255, 0.3);
}
@media (max-width: 1024px) {
.footer-content[data-v-cffded5f] {
    grid-template-columns: 1fr;
    gap: 40px;
}
.footer-links-grid[data-v-cffded5f] {
    grid-template-columns: repeat(2, 1fr);
}
}

.faq-section[data-v-2a638e23] {
    padding: 80px 0;
    background: white;
    text-align: center;
}
.faq-section .section-title[data-v-2a638e23] {
    font-size: 48px;
    font-weight: 800;
    margin: 0 0 16px 0;
    color: #1e293b;
}
.faq-section .section-subtitle[data-v-2a638e23] {
    font-size: 20px;
    color: #64748b;
    margin: 0 auto 30px auto;
    max-width: 700px;
}
.faq-list[data-v-2a638e23] {
    max-width: 800px;
    margin: 0 auto;
    margin-top: 30px;
    margin-bottom: 10px;
}
.faq-item[data-v-2a638e23] {
    background: white;
    border: 2px solid #f1f5f9;
    border-radius: 12px;
    margin-bottom: 16px;
    overflow: hidden;
    transition: all 0.3s ease;
}
.faq-item[data-v-2a638e23]:hover {
    border-color: #e2e8f0;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}
.faq-item.active[data-v-2a638e23] {
    border-color: #0ea5e9;
    box-shadow: 0 4px 16px rgba(14, 165, 233, 0.15);
}
.faq-question[data-v-2a638e23] {
    width: 100%;
    padding: 24px 28px;
    background: transparent;
    border: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    font-size: 18px;
    font-weight: 600;
    color: #1e293b;
    text-align: left;
    transition: all 0.3s ease;
}
.faq-question[data-v-2a638e23]:hover {
    color: #0ea5e9;
}
.faq-item.active .faq-question[data-v-2a638e23] {
    color: #0ea5e9;
}
.faq-icon[data-v-2a638e23] {
    color: #64748b;
    font-size: 16px;
    transition: all 0.3s ease;
    flex-shrink: 0;
    margin-left: 20px;
}
.faq-item.active .faq-icon[data-v-2a638e23] {
    color: #0ea5e9;
}
.faq-answer[data-v-2a638e23] {
    padding: 0 28px 24px 28px;
    color: #475569;
    font-size: 16px;
    line-height: 1.7;
    animation: slideDown-2a638e23 0.3s ease;
}
.faq-answer p[data-v-2a638e23] {
    margin: 0;
}
@keyframes slideDown-2a638e23 {
from {
        opacity: 0;
        transform: translateY(-10px);
}
to {
        opacity: 1;
        transform: translateY(0);
}
}
@media (max-width: 768px) {
.faq-question[data-v-2a638e23] {
        font-size: 16px;
        padding: 20px 20px;
}
.faq-answer[data-v-2a638e23] {
        padding: 0 20px 20px 20px;
        font-size: 15px;
}
}

/* ============================================================
   CONTIANT-INSPIRED — light, airy, rounded pastel cards,
   violet accent, dark navy CTA cards, generous whitespace.
   ============================================================ */
.landing-page[data-v-a08971ce] {
  --bg: #f4f3f8;
  --card: #ffffff;
  --ink: #1f2933;
  --muted: #6b7280;
  --violet: #2b82f0;
  --violet-hover: #1a6fdc;
  --lav: #dcd2f5;
  --peach: #e7d4c9;
  --mint: #cfe4dd;
  --skyblue: #c9def4;
  --dark: #1b2430;
  --line: rgba(31, 41, 51, 0.08);
  --radius: 28px;
  --radius-sm: 18px;
  --pill: 999px;
  --shadow: 0 24px 60px -34px rgba(31, 41, 51, 0.3);

  min-height: 100vh;
  background: var(--bg);
  color: var(--ink);
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  -webkit-font-smoothing: antialiased;
  letter-spacing: -0.01em;
}
.container[data-v-a08971ce] { max-width: 1200px; margin: 0 auto; padding: 0 24px;
}
.section-title[data-v-a08971ce] {
  font-size: clamp(34px, 4.6vw, 58px);
  font-weight: 600;
  letter-spacing: -0.035em;
  line-height: 1.06;
  color: var(--ink);
}
.section-subtitle[data-v-a08971ce] {
  font-size: clamp(18px, 2vw, 22px);
  font-weight: 400;
  color: var(--muted);
  line-height: 1.5;
}

/* Scroll-reveal — fades/rises in on scroll down, reverses on scroll up */
.reveal[data-v-a08971ce] {
  opacity: 0;
  transform: translateY(44px);
  transition: opacity 0.7s cubic-bezier(0.22, 0.7, 0.2, 1), transform 0.7s cubic-bezier(0.22, 0.7, 0.2, 1);
  will-change: opacity, transform;
}
.reveal.in-view[data-v-a08971ce] {
  opacity: 1;
  transform: none;
}
@media (prefers-reduced-motion: reduce) {
.reveal[data-v-a08971ce] { opacity: 1 !important; transform: none !important;
}
}

/* shared pill button */
.btn-hero[data-v-a08971ce], .btn-cta[data-v-a08971ce] {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 14px 26px;
  border-radius: var(--pill);
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  letter-spacing: -0.01em;
  transition: transform 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
  border: 1px solid transparent;
}
.btn-hero.btn-primary[data-v-a08971ce], .btn-cta.btn-primary[data-v-a08971ce] {
  background: var(--violet);
  color: #fff;
  box-shadow: 0 14px 30px -12px rgba(43, 130, 240, 0.7);
}
.btn-hero.btn-primary[data-v-a08971ce]::after, .btn-cta.btn-primary[data-v-a08971ce]::after,
.btn-hero.btn-secondary[data-v-a08971ce]::after {
  content: '→';
  font-size: 1.05em;
  transition: transform 0.2s ease;
}
.btn-hero.btn-primary[data-v-a08971ce]:hover, .btn-cta.btn-primary[data-v-a08971ce]:hover {
  background: var(--violet-hover);
  transform: translateY(-2px);
}
.btn-hero.btn-primary[data-v-a08971ce]:hover::after, .btn-cta.btn-primary[data-v-a08971ce]:hover::after { transform: translateX(4px);
}
.btn-hero.btn-secondary[data-v-a08971ce] {
  background: var(--card);
  color: var(--ink);
  border: 1px solid var(--line);
}
.btn-hero.btn-secondary[data-v-a08971ce]:hover { transform: translateY(-2px); border-color: rgba(31,41,51,0.2);
}
.btn-hero.btn-secondary[data-v-a08971ce]:hover::after { transform: translateX(4px);
}

/* ===================== HERO ===================== */
.hero-section[data-v-a08971ce] { position: relative; padding: 56px 0 60px; background: transparent; overflow: clip; overflow-clip-margin: 140px;
}
.mobile-hero-cta[data-v-a08971ce] { display: none;
}
.hero-content[data-v-a08971ce] { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 48px; align-items: end;
}
.hero-content--imgleft[data-v-a08971ce] { grid-template-columns: 0.95fr 1.05fr;
}
.hero-content--imgleft .hero-image img[data-v-a08971ce] { margin-left: 0; margin-right: auto;
}
.hero-content > .hero-text[data-v-a08971ce] { align-self: center; padding-bottom: 70px;
}
.hero-kicker[data-v-a08971ce] {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--violet);
  margin-bottom: 18px;
}
.hero-title[data-v-a08971ce] {
  font-size: clamp(40px, 5vw, 66px);
  font-weight: 600;
  line-height: 1.04;
  letter-spacing: -0.035em;
  color: var(--ink);
  margin: 0 0 6px;
}
.hero-underline[data-v-a08971ce] {
  display: block;
  width: 220px;
  height: 12px;
  margin: 0 0 26px;
  background: var(--violet);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='12'%3E%3Cpath d='M3 8 C 55 3, 110 10, 165 5 S 213 4, 217 7' stroke='black' stroke-width='4' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='12'%3E%3Cpath d='M3 8 C 55 3, 110 10, 165 5 S 213 4, 217 7' stroke='black' stroke-width='4' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat;
}
.hero-trust[data-v-a08971ce] { display: flex; flex-direction: column; gap: 14px; margin-top: 38px;
}
.hero-trust-label[data-v-a08971ce] { font-size: 13px; font-weight: 600; letter-spacing: 0.01em; color: var(--muted);
}
.hero-logos[data-v-a08971ce] { display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
}
.hlogo[data-v-a08971ce] {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 46px; height: 30px; padding: 0 12px;
  border-radius: 8px; background: rgba(31,41,51,0.05);
  font-size: 12px; font-weight: 700; letter-spacing: 0.03em;
  color: rgba(31,41,51,0.45);
}
.hero-subtitle[data-v-a08971ce] {
  font-size: clamp(17px, 1.9vw, 20px);
  color: var(--muted);
  line-height: 1.55;
  max-width: 48ch;
  margin: 0 0 32px;
}
.hero-buttons[data-v-a08971ce] { display: flex; gap: 16px; flex-wrap: wrap; align-items: center;
}
.hero-image[data-v-a08971ce] { align-self: end;
}
.hero-image-mobile[data-v-a08971ce] { display: none;
}
.hero-image-desktop[data-v-a08971ce] { display: block;
}
.hero-image img[data-v-a08971ce] {
  width: 100%;
  max-width: 468px;
  height: auto;
  margin-left: auto;
  display: block;
  filter: drop-shadow(0 40px 60px rgba(31, 41, 51, 0.22));
}
/* anchor the hand+phone to the very bottom edge so it reads as "rising from below" */
.hero-image-desktop .hero-visual[data-v-a08971ce] { align-items: center; margin-bottom: 0;
}

/* Hero floating UI cards (Contiant-style scene) */
.hero-visual[data-v-a08971ce] { position: relative; display: flex; justify-content: center;
}
.hfloat[data-v-a08971ce] {
  position: absolute;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 13px 16px;
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 22px 50px -18px rgba(31, 41, 51, 0.28), 0 0 0 1px rgba(31, 41, 51, 0.04);
  z-index: 3;
  animation: hfloatY-a08971ce 6s ease-in-out infinite;
}
.hfloat-txt[data-v-a08971ce] { display: flex; flex-direction: column; line-height: 1.15;
}
.hfloat-txt b[data-v-a08971ce] { font-size: 15px; font-weight: 700; color: var(--ink); letter-spacing: -0.01em;
}
.hfloat-txt i[data-v-a08971ce] { font-size: 12.5px; font-style: normal; color: var(--muted);
}
.hfloat-ico[data-v-a08971ce] {
  width: 36px; height: 36px; border-radius: 11px;
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-size: 15px; flex-shrink: 0;
}
.hfloat-ico.ok[data-v-a08971ce] { background: #22a06b;
}
.hfloat-ico.blue[data-v-a08971ce] { background: var(--violet);
}
.hfloat-ico.acc[data-v-a08971ce] { background: #f59e0b;
}
.hfloat-acc[data-v-a08971ce] { font-size: 14px; font-weight: 600; color: var(--ink);
}
.hfloat-dot[data-v-a08971ce] { width: 9px; height: 9px; border-radius: 50%; background: #22a06b; box-shadow: 0 0 0 4px rgba(34, 160, 107, 0.15);
}
.hfloat-result[data-v-a08971ce] { bottom: 12%; left: -6%; animation-delay: -1s;
}
.hfloat-acc[data-v-a08971ce] { top: 40%; right: -2%; animation-delay: -3s;
}
.hfloat-speed[data-v-a08971ce] { top: 12%; left: -8%; animation-delay: -5s;
}
@keyframes hfloatY-a08971ce {
0%, 100% { transform: translateY(0);
}
50% { transform: translateY(-12px);
}
}

/* ===================== FEATURES / VIDEO ===================== */
.features-section[data-v-a08971ce] { padding: 80px 0 0; text-align: center;
}
.features-section .section-title[data-v-a08971ce] { margin: 0 0 14px;
}
.features-section .section-subtitle[data-v-a08971ce] { margin: 0 auto; max-width: 560px;
}
.video-container[data-v-a08971ce] { display: flex; justify-content: center; padding: 0 20px;
}
.monitor-frame-image[data-v-a08971ce] {
  position: relative;
  width: 100%;
  max-width: 960px;
  aspect-ratio: 16 / 9;
  background: var(--dark);
  border-radius: var(--radius);
  overflow: hidden;
  box-shadow: var(--shadow);
  display: block;
}
.monitor-content[data-v-a08971ce] { position: absolute; inset: 0;
}
.monitor-content iframe[data-v-a08971ce] { width: 100%; height: 100%; border: none; display: block;
}

/* ===================== POWER GRID (every format → hub → export) ===================== */
.grid-section[data-v-a08971ce] { padding: 70px 0 90px; text-align: center; overflow: hidden;
}
.grid-title[data-v-a08971ce] { margin: 0 0 64px;
}
.powergrid[data-v-a08971ce] {
  display: grid;
  grid-template-columns: auto 1fr auto 1fr auto;
  align-items: center;
  gap: 0;
  max-width: 1040px;
  margin: 0 auto;
}
.pg-sources[data-v-a08971ce] { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px;
}
.pg-sources .pg-chip[data-v-a08971ce]:nth-child(7) { grid-column: 1 / -1; justify-self: center;
}
.pg-chip[data-v-a08971ce] {
  width: 78px; height: 70px; border-radius: 16px;
  background: var(--card); border: 1px solid var(--line);
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 14px 30px -22px rgba(31,41,51,0.4);
  color: var(--ink); font-size: 18px;
}
.pg-fmt[data-v-a08971ce] { font-size: 13px; font-weight: 800; letter-spacing: 0.04em; color: var(--muted);
}
.pg-wires[data-v-a08971ce] { height: 200px;
}
.pg-wires svg[data-v-a08971ce] { width: 100%; height: 100%;
}
.pg-wires path[data-v-a08971ce] { fill: none; stroke: var(--line); stroke-width: 1.5;
}
.pg-wires-r[data-v-a08971ce] { min-width: 40px;
}
.pg-hub[data-v-a08971ce] {
  width: 84px; height: 84px; border-radius: 24px;
  background: #fff; border: 1px solid var(--line);
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 26px 50px -24px rgba(31,41,51,0.45);
}
.pg-hub-logo[data-v-a08971ce] { width: 46px; height: 46px; transform: translateX(3px);
}
.pg-result[data-v-a08971ce] { display: flex; align-items: center; gap: 16px; justify-self: end;
}
.pg-card[data-v-a08971ce] { background: var(--card); border: 1px solid var(--line); border-radius: 20px; box-shadow: var(--shadow);
}
.pg-extract[data-v-a08971ce] { width: 230px; padding: 20px 22px; text-align: left;
}
.pg-row[data-v-a08971ce] { display: flex; align-items: center; justify-content: space-between; padding: 9px 0; border-bottom: 1px solid var(--line);
}
.pg-row[data-v-a08971ce]:nth-child(3) { border-bottom: none;
}
.pg-k[data-v-a08971ce] { font-size: 13px; color: var(--muted);
}
.pg-v[data-v-a08971ce] { font-size: 14px; font-weight: 700; color: var(--ink);
}
.pg-amount[data-v-a08971ce] { color: var(--violet);
}
.pg-export[data-v-a08971ce] {
  margin-top: 14px; width: 100%; padding: 11px; border: none; cursor: pointer;
  border-radius: var(--pill); background: var(--dark); color: #fff;
  font-size: 13px; font-weight: 600; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
}
.pg-success[data-v-a08971ce] { width: 170px; padding: 22px 20px; text-align: left; display: flex; flex-direction: column; gap: 6px;
}
.pg-check[data-v-a08971ce] { width: 34px; height: 34px; border-radius: 50%; background: rgba(43,130,240,0.12); color: var(--violet); display: inline-flex; align-items: center; justify-content: center; font-size: 14px; margin-bottom: 6px;
}
.pg-success b[data-v-a08971ce] { font-size: 15px; font-weight: 700; color: var(--ink);
}
.pg-success i[data-v-a08971ce] { font-size: 12px; font-style: normal; color: var(--muted); line-height: 1.4;
}

/* ===================== HOW IT WORKS (Contiant "Payment way with" flow cards) ===================== */
.how-it-works-section[data-v-a08971ce] { padding: 70px 0 100px;
}
/* ===== How It Works — sequential reveal (card → card → card, left → right) ===== */
.steps-timeline.reveal[data-v-a08971ce] { opacity: 1; transform: none;
}
.steps-timeline.reveal[data-v-a08971ce] > * { opacity: 0; transform: translateY(26px); transition: opacity 0.5s cubic-bezier(0.22,0.7,0.2,1), transform 0.55s cubic-bezier(0.22,0.7,0.2,1);
}
.steps-timeline.in-view[data-v-a08971ce] > * { opacity: 1; transform: none;
}
.steps-timeline.in-view[data-v-a08971ce] > *:nth-child(1) { transition-delay: 0.05s;
}
.steps-timeline.in-view[data-v-a08971ce] > *:nth-child(2) { transition-delay: 0.25s;
}
.steps-timeline.in-view[data-v-a08971ce] > *:nth-child(3) { transition-delay: 0.45s;
}
.steps-timeline.in-view[data-v-a08971ce] > *:nth-child(4) { transition-delay: 0.65s;
}
.steps-timeline.in-view[data-v-a08971ce] > *:nth-child(5) { transition-delay: 0.85s;
}

/* power-grid pieces placed inside the step cards */
.step-visual .pg-sources[data-v-a08971ce] { gap: 10px;
}
.step-visual .pg-success[data-v-a08971ce] { box-shadow: 0 16px 34px -24px rgba(31,41,51,0.4);
}

/* solid pastel colour per step card (matches the showcase sections) */
.step-item.step-blue[data-v-a08971ce]   { background: var(--skyblue); border: none;
}
.step-item.step-violet[data-v-a08971ce] { background: var(--lav); border: none;
}
.step-item.step-green[data-v-a08971ce]  { background: var(--mint); border: none;
}
.steps-timeline[data-v-a08971ce] {
  max-width: 1040px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr;
  align-items: center;
  gap: 36px;
}
.step-item[data-v-a08971ce] {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  text-align: center;
  aspect-ratio: 1 / 1;
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 30px 22px 26px;
  box-shadow: 0 26px 60px -38px rgba(31,41,51,0.32);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.step-item[data-v-a08971ce]:hover { transform: translateY(-6px); box-shadow: 0 34px 76px -34px rgba(31,41,51,0.38);
}

/* visual stage — centered in the upper area, like contiant */
.step-visual[data-v-a08971ce] {
  position: relative;
  flex: 1;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sv-scene[data-v-a08971ce] { position: relative; display: flex; align-items: center; justify-content: center;
}

/* unified step icon tile */
.sv-tile[data-v-a08971ce] {
  width: 58px; height: 58px; border-radius: 17px;
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-size: 22px;
  box-shadow: 0 14px 28px -10px rgba(31,41,51,0.45);
}
.sv-blue[data-v-a08971ce] { background: linear-gradient(150deg, #5aa2ff, #2b82f0); box-shadow: 0 14px 28px -10px rgba(43,130,240,0.6);
}
.sv-dark[data-v-a08971ce] { background: linear-gradient(150deg, #2b3a4d, #1b2430); box-shadow: 0 14px 28px -10px rgba(27,36,48,0.6);
}
.sv-green[data-v-a08971ce] { background: linear-gradient(150deg, #34c98b, #1f9b6a); box-shadow: 0 14px 28px -10px rgba(34,160,107,0.55);
}
.step-title[data-v-a08971ce] { font-size: clamp(15px, 1.5vw, 20px); font-weight: 600; letter-spacing: -0.03em; color: var(--ink); margin: 0; line-height: 1.15; white-space: nowrap;
}
.step-arrow[data-v-a08971ce] {
  display: flex; align-items: center; justify-content: center;
  color: #b5bcc8;
  width: 78px;
  margin: 0;
}
.step-arrow svg[data-v-a08971ce] { width: 74px; height: 40px;
}

/* ===================== BEFORE / AFTER ===================== */
.parallax-section[data-v-a08971ce] { position: relative; overflow: hidden; padding: 40px 0 90px; background: transparent; display: block;
}
.parallax-background[data-v-a08971ce], .parallax-overlay[data-v-a08971ce] { display: none;
}
.parallax-content[data-v-a08971ce] { position: relative; padding: 0 24px;
}
.before-after-container[data-v-a08971ce] { max-width: 1100px; margin: 0 auto; text-align: center;
}
.before-after-title[data-v-a08971ce] { font-size: clamp(32px, 4vw, 50px); font-weight: 600; letter-spacing: -0.03em; color: var(--ink); margin: 0 0 14px;
}
.before-after-subtitle[data-v-a08971ce] { font-size: clamp(17px, 1.8vw, 20px); color: var(--muted); margin: 0 0 40px;
}
.before-after-wrapper[data-v-a08971ce] { max-width: 1000px; margin: 0 auto;
}
.before-after-slider[data-v-a08971ce] {
  position: relative; width: 100%; height: 560px; overflow: hidden;
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  cursor: ew-resize; user-select: none; background: #fff;
}
.before-image[data-v-a08971ce], .after-image[data-v-a08971ce] { position: absolute; inset: 0; width: 100%; height: 100%;
}
.before-image img[data-v-a08971ce], .after-image img[data-v-a08971ce] { width: 100%; height: 100%; object-fit: contain; display: block;
}
.after-image[data-v-a08971ce] { clip-path: inset(0 50% 0 0); transition: clip-path 0.05s ease-out;
}
.image-label[data-v-a08971ce] {
  position: absolute; bottom: 24px; padding: 8px 18px;
  background: var(--dark); color: #fff;
  font-size: 13px; font-weight: 600; border-radius: var(--pill); z-index: 5;
}
.before-label[data-v-a08971ce] { left: 24px;
}
.after-label[data-v-a08971ce] { right: 24px;
}
.slider-handle[data-v-a08971ce] { position: absolute; top: 0; bottom: 0; width: 2px; left: 50%; transform: translateX(-50%); z-index: 10; pointer-events: none;
}
.slider-line[data-v-a08971ce] { position: absolute; top: 0; bottom: 0; left: 50%; transform: translateX(-50%); width: 2px; background: var(--violet);
}
.slider-button[data-v-a08971ce] {
  position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
  width: 52px; height: 52px; border-radius: 50%;
  background: var(--violet); color: #fff;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 8px 20px rgba(43, 130, 240, 0.45);
}
.slider-button svg[data-v-a08971ce] { width: 24px; height: 24px;
}

/* ===================== BENEFITS — pinned dark card-stack (scroll-locked) ===================== */
.benefits-section[data-v-a08971ce] { position: relative; padding: 36px 0;
}
.benefits-section.benefits-animated[data-v-a08971ce] { height: 240vh; padding: 0;
}
.benefits-section.benefits-animated .benefits-sticky[data-v-a08971ce] {
  position: sticky; top: 0; height: 100vh;
  display: flex; align-items: center;
  padding: 84px 0 24px; box-sizing: border-box;
}
.benefits-stage[data-v-a08971ce] {
  background: var(--dark);
  border-radius: var(--radius);
  padding: 64px 64px 70px;
  display: flex;
  flex-direction: column;
  gap: 48px;
  overflow: hidden;
  position: relative;
}
.benefits-stage[data-v-a08971ce]::before {
  content: '';
  position: absolute; left: 50%; top: 50%;
  width: 860px; height: 860px; transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(43,130,240,0.28), rgba(43,130,240,0) 62%);
  pointer-events: none; z-index: 0;
}
.benefits-stage[data-v-a08971ce] > * { position: relative; z-index: 1;
}
.benefits-section.benefits-animated .benefits-stage[data-v-a08971ce] {
  display: grid;
  grid-template-columns: 0.92fr 1.08fr;
  gap: 56px;
  align-items: center;
  align-content: center;
  width: 100%;
  min-height: calc(100vh - 132px);
  padding: 48px 72px;
}
.benefits-copy[data-v-a08971ce] { text-align: left;
}
.benefits-eyebrow[data-v-a08971ce] {
  display: inline-block; font-size: 13px; font-weight: 700;
  letter-spacing: 0.08em; text-transform: uppercase; color: #8fc6ff; margin-bottom: 16px;
}
.benefits-copy .section-title[data-v-a08971ce] { color: #fff; margin: 0 0 14px;
}
.benefits-copy .section-subtitle[data-v-a08971ce] { color: rgba(255, 255, 255, 0.6); margin: 0; max-width: 38ch;
}

/* card window */
.benefits-window[data-v-a08971ce] { position: relative; display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px;
}
.benefits-section.benefits-animated .benefits-window[data-v-a08971ce] {
  display: block;
  height: 640px;
}
.benefit-card[data-v-a08971ce] {
  position: relative;
  background: linear-gradient(158deg, #ffffff 0%, #f3f7fd 100%);
  border: 1px solid rgba(255, 255, 255, 0.6);
  border-radius: 24px;
  padding: 38px 38px 40px;
  text-align: left;
  overflow: hidden;
  box-shadow: 0 30px 70px -28px rgba(0, 0, 0, 0.55);
}
.benefits-section.benefits-animated .benefit-card[data-v-a08971ce] {
  position: absolute;
  top: 50%; left: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
  will-change: transform, opacity;
  transition: transform 0.55s cubic-bezier(0.22, 0.7, 0.2, 1), opacity 0.45s ease;
}
.bc-num[data-v-a08971ce] {
  position: absolute; top: 16px; right: 26px;
  font-size: 64px; font-weight: 800; line-height: 1;
  letter-spacing: -0.04em; color: rgba(31, 41, 51, 0.06);
  pointer-events: none;
}
.benefit-icon[data-v-a08971ce] {
  position: relative;
  width: 58px; height: 58px; border-radius: 17px;
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 22px; font-size: 22px; color: #fff;
}
.benefit-icon.blue[data-v-a08971ce]   { background: linear-gradient(150deg, #5aa2ff, #2b82f0); box-shadow: 0 14px 28px -10px rgba(43,130,240,0.6);
}
.benefit-icon.green[data-v-a08971ce]  { background: linear-gradient(150deg, #34d399, #10b981); box-shadow: 0 14px 28px -10px rgba(16,185,129,0.55);
}
.benefit-icon.purple[data-v-a08971ce] { background: linear-gradient(150deg, #a78bfa, #7c5cff); box-shadow: 0 14px 28px -10px rgba(124,92,255,0.55);
}
.benefit-icon.orange[data-v-a08971ce] { background: linear-gradient(150deg, #fbbf24, #f59e0b); box-shadow: 0 14px 28px -10px rgba(245,158,11,0.55);
}
.benefit-icon.cyan[data-v-a08971ce]   { background: linear-gradient(150deg, #22d3ee, #06b6d4); box-shadow: 0 14px 28px -10px rgba(6,182,212,0.55);
}
.benefit-icon.pink[data-v-a08971ce]   { background: linear-gradient(150deg, #f472b6, #ec4899); box-shadow: 0 14px 28px -10px rgba(236,72,153,0.55);
}
.benefit-title[data-v-a08971ce] { position: relative; font-size: 26px; font-weight: 700; letter-spacing: -0.025em; color: #16273a; margin: 0 0 11px; line-height: 1.12;
}
.benefit-description[data-v-a08971ce] { position: relative; font-size: 15.5px; color: rgba(22, 39, 58, 0.6); line-height: 1.55; margin: 0;
}
.benefits-cta[data-v-a08971ce] {
  display: inline-flex; align-items: center; gap: 9px;
  margin-top: 32px;
  padding: 14px 28px;
  border-radius: var(--pill);
  background: var(--violet);
  color: #fff;
  font-size: 16px; font-weight: 600;
  text-decoration: none;
  transition: transform 0.2s ease, background 0.2s ease;
}
.benefits-cta[data-v-a08971ce]::after { content: '→'; transition: transform 0.2s ease;
}
.benefits-cta[data-v-a08971ce]:hover { background: var(--violet-hover); transform: translateY(-2px);
}
.benefits-cta[data-v-a08971ce]:hover::after { transform: translateX(4px);
}

/* ===================== INDUSTRIES (alternating text + visual blocks) ===================== */
.industries-section[data-v-a08971ce] { position: relative; padding: 60px 0 100px; text-align: center; overflow: hidden;
}
.industries-section .hero-background[data-v-a08971ce] { display: none;
}
.industries-section .section-title[data-v-a08971ce] { color: var(--ink); margin: 0 0 0;
}
.industries-section .section-subtitle[data-v-a08971ce] { color: var(--muted); margin: 24px auto 0; max-width: 640px;
}

/* drawing underline under the centered title */
.section-underline[data-v-a08971ce] {
  display: block;
  width: 150px; height: 4px;
  margin: 18px auto 0;
  border-radius: 4px;
  background: var(--violet);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.8s cubic-bezier(0.22, 0.7, 0.2, 1) 0.1s;
}
.section-title.in-view + .section-underline[data-v-a08971ce] { transform: scaleX(1);
}

/* clean industry grid (Contiant "Payment evolution for every industry") */
.ind-grid[data-v-a08971ce] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 46px 52px; margin-top: 66px; text-align: left;
}
.ind-item[data-v-a08971ce] {
}
.ind-ico[data-v-a08971ce] {
  width: 54px; height: 54px; border-radius: 15px;
  background: rgba(43,130,240,0.1); color: var(--violet);
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 21px; margin-bottom: 20px;
}
.ind-title[data-v-a08971ce] { font-size: 20px; font-weight: 600; letter-spacing: -0.02em; color: var(--ink); margin: 0 0 10px; line-height: 1.2;
}
.ind-desc[data-v-a08971ce] { font-size: 14.5px; color: var(--muted); line-height: 1.6; margin: 0;
}
.industry-blocks[data-v-a08971ce] { display: flex; flex-direction: column; gap: 56px; margin-top: 80px;
}
.industry-row[data-v-a08971ce] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: center;
  text-align: left;
}
.industry-row:nth-child(even) .industry-text[data-v-a08971ce] { order: 2;
}
.industry-row:nth-child(even) .industry-visual[data-v-a08971ce] { order: 1;
}
.industry-kicker[data-v-a08971ce] {
  display: inline-block; font-size: 13px; font-weight: 700;
  letter-spacing: 0.08em; color: var(--violet); margin-bottom: 14px;
}
.industry-title[data-v-a08971ce] { font-size: clamp(26px, 2.6vw, 36px); font-weight: 600; letter-spacing: -0.025em; color: var(--ink); margin: 0 0 22px; line-height: 1.08;
}
.industry-list[data-v-a08971ce] { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px;
}
.industry-list li[data-v-a08971ce] { display: flex; align-items: center; gap: 12px; font-size: 16px; color: var(--muted);
}
.industry-list li svg[data-v-a08971ce] {
  flex-shrink: 0; width: 22px; height: 22px; padding: 5px;
  border-radius: 50%; background: rgba(43, 130, 240, 0.12); color: var(--violet);
  font-size: 11px;
}

/* pastel visual panel with a faux dashboard card */
.industry-visual[data-v-a08971ce] {
  border-radius: var(--radius);
  aspect-ratio: 4 / 3;
  display: flex; align-items: center; justify-content: center;
  padding: 44px;
}
.industry-visual.v-lav[data-v-a08971ce] { background: var(--lav);
}
.industry-visual.v-peach[data-v-a08971ce] { background: var(--peach);
}
.industry-visual.v-mint[data-v-a08971ce] { background: var(--mint);
}
.iv-card[data-v-a08971ce] {
  width: 100%; max-width: 360px;
  background: #fff;
  border-radius: 18px;
  padding: 26px;
  box-shadow: 0 30px 60px -28px rgba(31, 41, 51, 0.4);
}
.iv-top[data-v-a08971ce] { display: flex; align-items: center; justify-content: space-between; margin-bottom: 24px;
}
.iv-ico[data-v-a08971ce] {
  width: 52px; height: 52px; border-radius: 15px;
  background: var(--dark); color: #fff;
  display: flex; align-items: center; justify-content: center; font-size: 20px;
}
.iv-num[data-v-a08971ce] { font-size: 30px; font-weight: 700; color: rgba(31, 41, 51, 0.14); letter-spacing: -0.02em;
}
.iv-lines[data-v-a08971ce] { display: flex; flex-direction: column; gap: 12px;
}
.iv-lines span[data-v-a08971ce] { height: 12px; border-radius: 6px; background: #eef1f6;
}
.iv-lines span[data-v-a08971ce]:nth-child(1) { width: 100%;
}
.iv-lines span[data-v-a08971ce]:nth-child(2) { width: 78%;
}
.iv-lines span[data-v-a08971ce]:nth-child(3) { width: 88%; background: linear-gradient(90deg, var(--violet), #7db0ff); opacity: 0.85;
}

/* ===================== WHY CHOOSE / TIME SAVINGS ===================== */
.why-choose-section[data-v-a08971ce] { padding: 90px 0; background: transparent;
}
.why-choose-header[data-v-a08971ce] { text-align: center; margin-bottom: 56px;
}
.why-choose-header .section-title[data-v-a08971ce] { color: var(--ink); margin: 0 0 14px;
}
.why-choose-header .section-subtitle[data-v-a08971ce] { color: var(--muted); margin: 0 auto; max-width: 700px;
}
.time-savings-grid[data-v-a08971ce] { display: grid; grid-template-columns: 1fr auto 1fr; gap: 24px; margin-bottom: 50px; align-items: stretch;
}
.time-comparison-card[data-v-a08971ce] { border-radius: var(--radius); padding: 40px 34px; border: 1px solid var(--line); background: var(--card); box-shadow: var(--shadow);
}
.time-comparison-card.automated[data-v-a08971ce] { background: var(--dark); border-color: transparent;
}
.comparison-header[data-v-a08971ce] { text-align: center; margin-bottom: 26px;
}
.comparison-icon[data-v-a08971ce] { width: 54px; height: 54px; border-radius: 16px; display: flex; align-items: center; justify-content: center; font-size: 22px; margin: 0 auto 16px;
}
.traditional-icon[data-v-a08971ce] { background: var(--bg); color: var(--muted);
}
.automated-icon[data-v-a08971ce] { background: var(--violet); color: #fff;
}
.comparison-title[data-v-a08971ce] { font-size: 22px; font-weight: 600; letter-spacing: -0.02em; color: var(--ink); margin: 0;
}
.automated .comparison-title[data-v-a08971ce] { color: #fff;
}
.comparison-body[data-v-a08971ce] { text-align: center;
}
.time-estimate[data-v-a08971ce] { margin-bottom: 26px; padding: 22px; background: var(--bg); border-radius: var(--radius-sm);
}
.automated .time-estimate[data-v-a08971ce] { background: rgba(255,255,255,0.08);
}
.time-number[data-v-a08971ce] { display: block; font-size: 52px; font-weight: 700; letter-spacing: -0.03em; line-height: 1; margin-bottom: 8px; color: var(--ink);
}
.automated .time-number[data-v-a08971ce] { color: #fff;
}
.time-estimate.highlight .time-number[data-v-a08971ce] { color: #bfdbfe;
}
.time-unit[data-v-a08971ce] { display: block; font-size: 12px; font-weight: 600; color: var(--muted); text-transform: uppercase; letter-spacing: 0.1em;
}
.automated .time-unit[data-v-a08971ce] { color: rgba(255,255,255,0.55);
}
.comparison-tasks[data-v-a08971ce] { list-style: none; padding: 0; margin: 0; text-align: left;
}
.comparison-tasks li[data-v-a08971ce] { display: flex; align-items: center; gap: 12px; padding: 11px 4px; font-size: 15px; color: var(--muted); line-height: 1.45; border-bottom: 1px solid var(--line);
}
.comparison-tasks li[data-v-a08971ce]:last-child { border-bottom: none;
}
.automated .comparison-tasks li[data-v-a08971ce] { color: rgba(255,255,255,0.82); border-bottom-color: rgba(255,255,255,0.1);
}
.task-icon[data-v-a08971ce] { flex-shrink: 0; width: 20px; height: 20px; display: inline-flex !important; align-items: center; justify-content: center; font-size: 17px;
}
.comparison-tasks .task-icon.negative[data-v-a08971ce] { color: #cbd0d6;
}
.comparison-tasks .task-icon.positive[data-v-a08971ce] { display: inline-flex !important; color: #60a5fa;
}
.vs-divider[data-v-a08971ce] { display: flex; align-items: center; justify-content: center; align-self: center; width: 52px; height: 52px; border-radius: 50%; background: var(--violet); color: #fff; font-size: 14px; font-weight: 700; box-shadow: 0 10px 24px -8px rgba(43,130,240,0.6);
}
.savings-highlight[data-v-a08971ce] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-bottom: 50px;
}
.savings-stat[data-v-a08971ce] { background: var(--card); border-radius: var(--radius); padding: 38px 28px; text-align: center; border: 1px solid var(--line); box-shadow: var(--shadow); transition: transform 0.3s ease;
}
.savings-stat[data-v-a08971ce]:hover { transform: translateY(-6px);
}
.stat-icon[data-v-a08971ce] { width: 46px; height: 46px; margin: 0 auto 16px; border-radius: 50%; background: rgba(43,130,240,0.1); color: var(--violet); display: flex; align-items: center; justify-content: center; font-size: 18px;
}
.stat-number[data-v-a08971ce] { font-size: 44px; font-weight: 700; letter-spacing: -0.03em; color: var(--ink); margin: 0 0 6px;
}
.stat-label[data-v-a08971ce] { font-size: 15px; color: var(--muted); font-weight: 400; margin: 0;
}
.roi-calculator[data-v-a08971ce] { background: var(--card); border-radius: var(--radius); padding: 50px; border: 1px solid var(--line); box-shadow: var(--shadow);
}
.roi-title[data-v-a08971ce] { font-size: 26px; font-weight: 600; letter-spacing: -0.02em; color: var(--ink); margin-bottom: 10px; text-align: center;
}
.roi-description[data-v-a08971ce] { font-size: 16px; color: var(--muted); text-align: center; margin-bottom: 32px;
}
.roi-breakdown[data-v-a08971ce] { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px;
}
.roi-item[data-v-a08971ce] { display: flex; justify-content: space-between; align-items: center; padding: 20px 24px; background: var(--bg); border-radius: var(--radius-sm); border: none;
}
.roi-item.highlight[data-v-a08971ce] { background: var(--violet);
}
.roi-item.highlight .roi-label[data-v-a08971ce], .roi-item.highlight .roi-value[data-v-a08971ce] { color: #fff;
}
.roi-label[data-v-a08971ce] { font-size: 15px; color: var(--muted); font-weight: 500;
}
.roi-value[data-v-a08971ce] { font-size: 20px; font-weight: 700; color: var(--ink); letter-spacing: -0.02em;
}
.roi-input[data-v-a08971ce] { font-size: 20px; font-weight: 700; color: var(--ink); border: none; background: #fff; text-align: right; width: 110px; padding: 6px 10px; border-radius: 10px; transition: box-shadow 0.2s ease;
}
.roi-input[data-v-a08971ce]:focus { outline: none; box-shadow: 0 0 0 2px var(--violet);
}
.roi-input[data-v-a08971ce]::-webkit-inner-spin-button, .roi-input[data-v-a08971ce]::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0;
}
.roi-input[type=number][data-v-a08971ce] { -moz-appearance: textfield; appearance: textfield;
}

/* ===================== DEVELOPER / API (lavender card + code editor) ===================== */
.dev-section[data-v-a08971ce] { padding: 26px 0;
}
.dev-section .container[data-v-a08971ce] { background: var(--lav); border-radius: var(--radius); padding: 56px;
}
.dev-card[data-v-a08971ce] { background: transparent; border-radius: 0; padding: 0;
}
.dev-title[data-v-a08971ce] { font-size: clamp(28px, 3.4vw, 46px); font-weight: 600; letter-spacing: -0.03em; line-height: 1.1; text-align: center; color: var(--ink); margin: 0 0 48px;
}
.dev-underline[data-v-a08971ce] { position: relative; white-space: nowrap;
}
.dev-underline[data-v-a08971ce]::after { content: ''; position: absolute; left: 0; right: 0; bottom: -2px; height: 7px; background: var(--violet); border-radius: 4px; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='8'%3E%3Cpath d='M2 5 C 50 2, 100 7, 150 4 S 196 3, 198 5' stroke='black' stroke-width='3' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center/100% 100%; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='8'%3E%3Cpath d='M2 5 C 50 2, 100 7, 150 4 S 196 3, 198 5' stroke='black' stroke-width='3' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center/100% 100%;
}
.dev-grid[data-v-a08971ce] { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: 48px; align-items: center;
}
.dev-steps[data-v-a08971ce] { list-style: none; margin: 0 0 28px; padding: 0; display: flex; flex-direction: column; gap: 12px;
}
.dev-steps li[data-v-a08971ce] { display: flex; align-items: center; gap: 12px; font-size: 15px; font-weight: 600; color: var(--ink);
}
.dev-steps li span[data-v-a08971ce] { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 9px; background: rgba(27,36,48,0.08); font-size: 12px; font-weight: 700; color: var(--muted);
}
.dev-sub[data-v-a08971ce] { font-size: 22px; font-weight: 600; letter-spacing: -0.02em; color: var(--ink); margin: 0 0 10px;
}
.dev-desc[data-v-a08971ce] { font-size: 15px; color: rgba(27,36,48,0.62); line-height: 1.55; margin: 0;
}
.dev-editor[data-v-a08971ce] { background: #161d27; border-radius: 18px; overflow: hidden; box-shadow: 0 40px 80px -34px rgba(27,36,48,0.7);
}
.dev-tabs[data-v-a08971ce] { display: flex; align-items: center; gap: 8px; padding: 13px 16px; background: #1e2733; border-bottom: 1px solid rgba(255,255,255,0.06);
}
.dev-dot[data-v-a08971ce] { width: 11px; height: 11px; border-radius: 50%; background: rgba(255,255,255,0.18);
}
.dev-tab[data-v-a08971ce] { margin-left: 6px; font-size: 12px; font-weight: 600; color: rgba(255,255,255,0.4); padding: 4px 12px; border-radius: var(--pill);
}
.dev-tab.active[data-v-a08971ce] { background: var(--violet); color: #fff;
}
.dev-tab[data-v-a08971ce]:first-of-type { margin-left: 14px;
}
.dev-code[data-v-a08971ce] { margin: 0; padding: 22px 24px; font-family: 'SF Mono', ui-monospace, 'Cascadia Code', Menlo, Consolas, monospace; font-size: 13px; line-height: 1.75; color: rgba(255,255,255,0.82); overflow-x: auto; white-space: pre;
}
.dev-code .c-cm[data-v-a08971ce] { color: #6b7689;
}
.dev-code .c-st[data-v-a08971ce] { color: #8fd0a0;
}
.dev-code .c-vr[data-v-a08971ce] { color: #ef8aa0;
}
.dev-code .c-nm[data-v-a08971ce] { color: #79b6ff;
}

/* ===================== SHOWCASE (Contiant dashboard sections) ===================== */
.showcase-section[data-v-a08971ce] { padding: 26px 0;
}
.showcase-section .container[data-v-a08971ce] { background: var(--peach); border-radius: var(--radius); padding: 56px;
}
.sc-mint .container[data-v-a08971ce] { background: var(--mint);
}
.sc-sky .container[data-v-a08971ce] { background: var(--skyblue);
}
.sc-lav .container[data-v-a08971ce] { background: var(--mint);
}

/* time-savings comparison bars (in the dashboard visual) */
.dash-compare[data-v-a08971ce] { display: flex; flex-direction: column; gap: 18px; margin-bottom: 2px;
}

/* industry list (no percentages) */
.dash-industries[data-v-a08971ce] { display: flex; flex-direction: column; gap: 7px;
}
.di-row[data-v-a08971ce] { display: flex; align-items: center; gap: 12px; padding: 11px 13px; border-radius: 11px; background: #f8fafc; border: 1px solid #eef2f6;
}
.di-ico[data-v-a08971ce] { width: 32px; height: 32px; border-radius: 9px; background: #eff6ff; color: #0ea5e9; display: inline-flex; align-items: center; justify-content: center; font-size: 14px; flex-shrink: 0;
}
.di-name[data-v-a08971ce] { flex: 1; font-size: 13.5px; font-weight: 600; color: #0f172a;
}
.di-tick[data-v-a08971ce] { color: #10b981; font-size: 13px;
}
.dc-head[data-v-a08971ce] { display: flex; align-items: center; justify-content: space-between; margin-bottom: 9px;
}
.dc-label[data-v-a08971ce] { display: inline-flex; align-items: center; gap: 9px; font-size: 13px; font-weight: 600; color: #0f172a;
}
.dc-ico[data-v-a08971ce] { width: 24px; height: 24px; border-radius: 7px; background: #eff6ff; color: #0ea5e9; display: inline-flex; align-items: center; justify-content: center; font-size: 11px;
}
.dc-val[data-v-a08971ce] { font-size: 12px; font-weight: 700;
}
.dc-bad[data-v-a08971ce] { color: #ef4444;
}
.dc-good[data-v-a08971ce] { color: #10b981;
}
.dc-brand[data-v-a08971ce] { color: #0ea5e9;
}
.dc-track[data-v-a08971ce] { height: 12px; border-radius: 6px; background: #eef2f6; overflow: hidden;
}
.dc-fill[data-v-a08971ce] { display: block; height: 100%; border-radius: 6px;
}
.dc-fill-bad[data-v-a08971ce] { background: linear-gradient(90deg, #fca5a5, #ef4444);
}
.dc-fill-good[data-v-a08971ce] { background: linear-gradient(90deg, #6ee7b7, #10b981);
}
.dc-fill-brand[data-v-a08971ce] { background: linear-gradient(90deg, #38bdf8, #0ea5e9);
}

/* interactive calculator inputs inside the dashboard */
.dash-calc[data-v-a08971ce] { display: grid; grid-template-columns: 1fr 1fr; gap: 12px;
}
.calc-row[data-v-a08971ce] { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 14px; background: #f8fafc; border: 1px solid #eef2f6; border-radius: 12px; cursor: text;
}
.calc-label[data-v-a08971ce] { font-size: 12px; font-weight: 600; color: #64748b;
}
.calc-input[data-v-a08971ce] {
  width: 62px; text-align: right; border: none; background: #fff;
  border: 1px solid #e2e8f0; border-radius: 8px; padding: 5px 8px;
  font-size: 14px; font-weight: 700; color: #0f172a;
  transition: box-shadow 0.15s ease, border-color 0.15s ease;
}
.calc-input[data-v-a08971ce]:focus { outline: none; border-color: #0ea5e9; box-shadow: 0 0 0 3px rgba(14,165,233,0.15);
}
.calc-input[data-v-a08971ce]::-webkit-inner-spin-button, .calc-input[data-v-a08971ce]::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0;
}
.calc-input[type=number][data-v-a08971ce] { -moz-appearance: textfield; appearance: textfield;
}
.sc-row[data-v-a08971ce] { display: grid; grid-template-columns: 1.22fr 0.78fr; gap: 52px; align-items: center;
}
.sc-row--imgright[data-v-a08971ce] { grid-template-columns: 0.78fr 1.22fr;
}
.sc-copy[data-v-a08971ce] { padding: 6px 0;
}
.sc-title[data-v-a08971ce] { font-size: clamp(28px, 3vw, 44px); font-weight: 600; letter-spacing: -0.03em; line-height: 1.14; color: var(--ink); margin: 0 0 18px;
}
.sc-underline[data-v-a08971ce] { position: relative; white-space: nowrap;
}
.sc-underline[data-v-a08971ce]::after { content: ''; position: absolute; left: 0; right: 0; bottom: -3px; height: 7px; background: var(--violet); border-radius: 4px; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='8'%3E%3Cpath d='M2 5 C 50 2, 100 7, 150 4 S 196 3, 198 5' stroke='black' stroke-width='3' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center/100% 100%; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='8'%3E%3Cpath d='M2 5 C 50 2, 100 7, 150 4 S 196 3, 198 5' stroke='black' stroke-width='3' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center/100% 100%;
}
.sc-kick[data-v-a08971ce] { font-size: 17px; font-weight: 700; font-style: italic; color: var(--ink); margin: 0 0 12px;
}
.sc-desc[data-v-a08971ce] { font-size: 15px; color: rgba(27,36,48,0.62); line-height: 1.6; margin: 0; max-width: 42ch;
}

/* faux app dashboard — mirrors the real Invoice Scan UI (light theme, sky accent, solid status badges) */
.dash[data-v-a08971ce] { background: #ffffff; border: 1px solid #e2e8f0; border-radius: 16px; overflow: hidden; box-shadow: 0 44px 84px -36px rgba(15,23,42,0.4); color: #0f172a;
}
.dash-bar[data-v-a08971ce] { display: none;
}
.dash-dots[data-v-a08971ce] { display: flex; gap: 5px;
}
.dash-dots i[data-v-a08971ce] { width: 9px; height: 9px; border-radius: 50%; background: #cbd5e1;
}
.dash-logo[data-v-a08971ce] { width: 17px; height: 17px; margin-left: 8px;
}
.dash-brand[data-v-a08971ce] { font-size: 13px; font-weight: 700; letter-spacing: -0.01em; color: #0f172a;
}
.dash-user[data-v-a08971ce] { margin-left: auto; display: flex; align-items: center; gap: 7px; font-size: 12px; font-weight: 500; color: #64748b;
}
.dash-ava[data-v-a08971ce] { width: 22px; height: 22px; border-radius: 50%; background: linear-gradient(135deg, #38bdf8, #0ea5e9);
}
.dash-nav[data-v-a08971ce] { display: none;
}
.dash-nav .active[data-v-a08971ce] { color: #0f172a; position: relative;
}
.dash-nav .active[data-v-a08971ce]::after { content: ''; position: absolute; left: 0; right: 0; bottom: -12px; height: 2px; background: #0ea5e9; border-radius: 2px;
}

/* invoice table */
.dash-thead[data-v-a08971ce], .dash-r[data-v-a08971ce] { display: grid; grid-template-columns: 30px 1fr 120px 96px 80px; align-items: center; gap: 12px; padding: 10px 18px;
}
.dash-thead[data-v-a08971ce] { background: #f8fafc; border-bottom: 2px solid #e2e8f0; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; color: #64748b;
}
.dash-thead .th-info[data-v-a08971ce] { grid-column: 1 / 3;
}
.dash-thead .th-amt[data-v-a08971ce] { text-align: right;
}
.dash-thead .th-st[data-v-a08971ce] { text-align: center;
}
.dash-thead .th-act[data-v-a08971ce] { text-align: right;
}
.dash-rows[data-v-a08971ce] { display: flex; flex-direction: column;
}
.dash-r[data-v-a08971ce] { border-bottom: 1px solid #eef2f6;
}
.dash-r[data-v-a08971ce]:last-child { border-bottom: none;
}
.r-thumb[data-v-a08971ce] { width: 30px; height: 36px; border-radius: 6px; background: #eff6ff; color: #0ea5e9; display: inline-flex; align-items: center; justify-content: center; font-size: 13px;
}
.r-info[data-v-a08971ce] { display: flex; flex-direction: column; gap: 2px; min-width: 0;
}
.r-info b[data-v-a08971ce] { font-size: 13px; font-weight: 700; color: #0f172a;
}
.r-info i[data-v-a08971ce] { font-style: normal; font-size: 11.5px; color: #64748b; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.r-amt[data-v-a08971ce] { display: flex; flex-direction: column; align-items: flex-end; gap: 2px;
}
.r-amt b[data-v-a08971ce] { font-size: 13px; font-weight: 700; color: #0f172a;
}
.r-amt small[data-v-a08971ce] { font-size: 10px; font-weight: 600; color: #94a3b8;
}
.r-amt i[data-v-a08971ce] { font-style: normal; font-size: 10.5px; color: #94a3b8;
}
.r-st[data-v-a08971ce] { justify-self: center; padding: 4px 10px; border-radius: 6px; font-size: 10.5px; font-weight: 600; color: #fff; white-space: nowrap;
}
.st-ok[data-v-a08971ce] { background: #10b981;
}
.st-proc[data-v-a08971ce] { background: #f59e0b;
}
.st-fail[data-v-a08971ce] { background: #ef4444;
}
.r-act[data-v-a08971ce] { justify-self: end; display: inline-flex; gap: 6px;
}
.r-act .ra[data-v-a08971ce] { width: 26px; height: 26px; border-radius: 7px; background: #f1f5f9; color: #64748b; display: inline-flex; align-items: center; justify-content: center; font-size: 11px;
}

/* analytics variant — light */
.dash-analytics[data-v-a08971ce] { padding: 18px; display: flex; flex-direction: column; gap: 14px;
}
.dash-stats[data-v-a08971ce] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px;
}
.dash-stat[data-v-a08971ce] { background: #f8fafc; border: 1px solid #eef2f6; border-radius: 12px; padding: 14px 16px;
}
.dash-stat-k[data-v-a08971ce] { display: block; font-size: 11px; color: #64748b; margin-bottom: 6px;
}
.dash-stat b[data-v-a08971ce] { font-size: 22px; font-weight: 700; letter-spacing: -0.02em; color: #0f172a;
}
.dash-chart-row[data-v-a08971ce] { display: grid; grid-template-columns: 1.6fr 0.85fr; gap: 12px;
}
.dash-bars[data-v-a08971ce] { display: flex; align-items: flex-end; gap: 8px; height: 132px; background: #f8fafc; border: 1px solid #eef2f6; border-radius: 12px; padding: 16px;
}
.dash-bars i[data-v-a08971ce] { flex: 1; min-height: 6px; border-radius: 4px 4px 0 0; background: linear-gradient(180deg, #38bdf8, #0ea5e9);
}
.dash-donut[data-v-a08971ce] { display: flex; align-items: center; justify-content: center; background: #f8fafc; border: 1px solid #eef2f6; border-radius: 12px;
}
.donut[data-v-a08971ce] { position: relative; width: 96px; height: 96px; border-radius: 50%; background: conic-gradient(#0ea5e9 0 53%, #e2e8f0 53% 100%); display: flex; align-items: center; justify-content: center;
}
.donut[data-v-a08971ce]::before { content: ''; position: absolute; inset: 13px; border-radius: 50%; background: #ffffff;
}
.donut b[data-v-a08971ce] { position: relative; font-size: 18px; font-weight: 700; color: #0f172a;
}

/* ---- Contiant-style staggered reveal for the code editor + dashboards ---- */
/* code editor slides in from the side after the title */
.dev-card.reveal .dev-editor[data-v-a08971ce] {
  opacity: 0; transform: translateX(46px) scale(0.96);
  transition: opacity 0.7s cubic-bezier(0.22,0.7,0.2,1) 0.15s, transform 0.7s cubic-bezier(0.22,0.7,0.2,1) 0.15s;
}
.dev-card.in-view .dev-editor[data-v-a08971ce] { opacity: 1; transform: none;
}
.dev-card.reveal .dev-steps li[data-v-a08971ce] { opacity: 0; transform: translateX(-16px); transition: opacity 0.5s ease, transform 0.5s cubic-bezier(0.22,0.7,0.2,1);
}
.dev-card.in-view .dev-steps li[data-v-a08971ce] { opacity: 1; transform: none;
}
.dev-card.in-view .dev-steps li[data-v-a08971ce]:nth-child(1) { transition-delay: 0.2s;
}
.dev-card.in-view .dev-steps li[data-v-a08971ce]:nth-child(2) { transition-delay: 0.32s;
}
.dev-card.in-view .dev-steps li[data-v-a08971ce]:nth-child(3) { transition-delay: 0.44s;
}

/* invoice table rows cascade in */
.sc-visual.reveal .dash-r[data-v-a08971ce] { opacity: 0; transform: translateY(16px); transition: opacity 0.5s ease, transform 0.55s cubic-bezier(0.22,0.7,0.2,1);
}
.sc-visual.in-view .dash-r[data-v-a08971ce] { opacity: 1; transform: none;
}
.sc-visual.in-view .dash-r[data-v-a08971ce]:nth-child(1) { transition-delay: 0.22s;
}
.sc-visual.in-view .dash-r[data-v-a08971ce]:nth-child(2) { transition-delay: 0.31s;
}
.sc-visual.in-view .dash-r[data-v-a08971ce]:nth-child(3) { transition-delay: 0.40s;
}
.sc-visual.in-view .dash-r[data-v-a08971ce]:nth-child(4) { transition-delay: 0.49s;
}
.sc-visual.in-view .dash-r[data-v-a08971ce]:nth-child(5) { transition-delay: 0.58s;
}

/* analytics: stat cards rise, bars grow, donut pops */
.sc-visual.reveal .dash-stat[data-v-a08971ce] { opacity: 0; transform: translateY(16px); transition: opacity 0.5s ease, transform 0.55s cubic-bezier(0.22,0.7,0.2,1);
}
.sc-visual.in-view .dash-stat[data-v-a08971ce] { opacity: 1; transform: none;
}
.sc-visual.in-view .dash-stat[data-v-a08971ce]:nth-child(1) { transition-delay: 0.2s;
}
.sc-visual.in-view .dash-stat[data-v-a08971ce]:nth-child(2) { transition-delay: 0.3s;
}
.sc-visual.in-view .dash-stat[data-v-a08971ce]:nth-child(3) { transition-delay: 0.4s;
}
.sc-visual.reveal .dash-bars i[data-v-a08971ce] { transform: scaleY(0); transform-origin: bottom; transition: transform 0.65s cubic-bezier(0.22,0.7,0.2,1);
}
.sc-visual.in-view .dash-bars i[data-v-a08971ce] { transform: scaleY(1);
}
.sc-visual.in-view .dash-bars i[data-v-a08971ce]:nth-child(1) { transition-delay: 0.35s;
}
.sc-visual.in-view .dash-bars i[data-v-a08971ce]:nth-child(2) { transition-delay: 0.41s;
}
.sc-visual.in-view .dash-bars i[data-v-a08971ce]:nth-child(3) { transition-delay: 0.47s;
}
.sc-visual.in-view .dash-bars i[data-v-a08971ce]:nth-child(4) { transition-delay: 0.53s;
}
.sc-visual.in-view .dash-bars i[data-v-a08971ce]:nth-child(5) { transition-delay: 0.59s;
}
.sc-visual.in-view .dash-bars i[data-v-a08971ce]:nth-child(6) { transition-delay: 0.65s;
}
.sc-visual.in-view .dash-bars i[data-v-a08971ce]:nth-child(7) { transition-delay: 0.71s;
}
.sc-visual.in-view .dash-bars i[data-v-a08971ce]:nth-child(8) { transition-delay: 0.77s;
}
.sc-visual.reveal .dash-donut[data-v-a08971ce] { opacity: 0; transform: scale(0.85); transition: opacity 0.5s ease 0.5s, transform 0.6s cubic-bezier(0.34,1.56,0.64,1) 0.5s;
}
.sc-visual.in-view .dash-donut[data-v-a08971ce] { opacity: 1; transform: none;
}

/* comparison / industry bars grow from the left */
.sc-visual.reveal .dc-fill[data-v-a08971ce] { transform: scaleX(0); transform-origin: left; transition: transform 0.8s cubic-bezier(0.22,0.7,0.2,1);
}
.sc-visual.in-view .dc-fill[data-v-a08971ce] { transform: scaleX(1);
}
.sc-visual.in-view .dc-row:nth-child(1) .dc-fill[data-v-a08971ce] { transition-delay: 0.30s;
}
.sc-visual.in-view .dc-row:nth-child(2) .dc-fill[data-v-a08971ce] { transition-delay: 0.38s;
}
.sc-visual.in-view .dc-row:nth-child(3) .dc-fill[data-v-a08971ce] { transition-delay: 0.46s;
}
.sc-visual.in-view .dc-row:nth-child(4) .dc-fill[data-v-a08971ce] { transition-delay: 0.54s;
}
.sc-visual.in-view .dc-row:nth-child(5) .dc-fill[data-v-a08971ce] { transition-delay: 0.62s;
}
.sc-visual.in-view .dc-row:nth-child(6) .dc-fill[data-v-a08971ce] { transition-delay: 0.70s;
}

/* industry list rows cascade in */
.sc-visual.reveal .di-row[data-v-a08971ce] { opacity: 0; transform: translateY(14px); transition: opacity 0.5s ease, transform 0.5s cubic-bezier(0.22,0.7,0.2,1);
}
.sc-visual.in-view .di-row[data-v-a08971ce] { opacity: 1; transform: none;
}
.sc-visual.in-view .di-row[data-v-a08971ce]:nth-child(1) { transition-delay: 0.22s;
}
.sc-visual.in-view .di-row[data-v-a08971ce]:nth-child(2) { transition-delay: 0.30s;
}
.sc-visual.in-view .di-row[data-v-a08971ce]:nth-child(3) { transition-delay: 0.38s;
}
.sc-visual.in-view .di-row[data-v-a08971ce]:nth-child(4) { transition-delay: 0.46s;
}
.sc-visual.in-view .di-row[data-v-a08971ce]:nth-child(5) { transition-delay: 0.54s;
}
.sc-visual.in-view .di-row[data-v-a08971ce]:nth-child(6) { transition-delay: 0.62s;
}

/* ===================== CTA (dark navy card) ===================== */
.cta-section[data-v-a08971ce] { padding: 40px 0 110px;
}
.cta-section .container[data-v-a08971ce] {
  position: relative;
  background: var(--dark);
  border-radius: var(--radius);
  padding: 96px 48px;
  text-align: center;
  overflow: hidden;
}
.cta-section .container[data-v-a08971ce]::before {
  content: '';
  position: absolute; left: 50%; top: 50%;
  width: 760px; height: 760px; transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(43,130,240,0.28), rgba(43,130,240,0) 62%);
  pointer-events: none;
}
.cta-section .container[data-v-a08971ce] > * { position: relative; z-index: 1;
}
.cta-title[data-v-a08971ce] { font-size: clamp(32px, 4vw, 50px); font-weight: 600; letter-spacing: -0.03em; color: #fff; margin: 0 0 16px;
}
.cta-subtitle[data-v-a08971ce] { font-size: clamp(17px, 1.8vw, 20px); color: rgba(255,255,255,0.65); margin: 0 auto 36px; max-width: 580px; line-height: 1.5;
}
.cta-buttons[data-v-a08971ce] { display: flex; gap: 16px; justify-content: center; align-items: center; flex-wrap: wrap;
}
.cta-section .btn-primary[data-v-a08971ce] { background: var(--violet); color: #fff;
}
.cta-section .btn-primary[data-v-a08971ce]:hover { background: var(--violet-hover); transform: translateY(-2px);
}
.cta-section .btn-secondary[data-v-a08971ce] {
  display: inline-flex; align-items: center; gap: 9px;
  padding: 14px 26px; border-radius: var(--pill);
  font-size: 16px; font-weight: 600; text-decoration: none;
  background: transparent; color: #fff; border: 1px solid rgba(255,255,255,0.25);
  transition: all 0.2s ease;
}
.cta-section .btn-secondary[data-v-a08971ce]:hover { background: rgba(255,255,255,0.1); transform: translateY(-2px);
}

/* ===================== COMPONENT OVERRIDES (landing only) ===================== */
.landing-page[data-v-a08971ce] .navbar,
.landing-page[data-v-a08971ce] .navbar a,
.landing-page[data-v-a08971ce] .navbar button,
.landing-page[data-v-a08971ce] .navbar input {
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}
.landing-page[data-v-a08971ce] .navbar {
  background: rgba(244, 243, 248, 0.8);
  border-bottom: 1px solid var(--line);
  box-shadow: none;
  -webkit-backdrop-filter: saturate(160%) blur(16px);
  backdrop-filter: saturate(160%) blur(16px);
}
.landing-page[data-v-a08971ce] .nav-link { color: var(--muted);
}
.landing-page[data-v-a08971ce] .nav-link:hover, .landing-page[data-v-a08971ce] .nav-link.router-link-active { color: var(--ink);
}
.landing-page[data-v-a08971ce] .language-btn { background: transparent; border: 1px solid var(--line); color: var(--muted);
}
.landing-page[data-v-a08971ce] .language-btn:hover { background: #fff; border-color: var(--violet); color: var(--violet);
}
.landing-page[data-v-a08971ce] .btn-nav-login { background: var(--violet); color: #fff; border-radius: var(--pill); box-shadow: none;
}
.landing-page[data-v-a08971ce] .btn-nav-login:hover { background: var(--violet-hover); transform: translateY(-2px);
}
.landing-page[data-v-a08971ce] .mobile-menu-btn { color: var(--ink);
}
.landing-page[data-v-a08971ce] .nav-links.mobile-open { background: #fff; border-top: 1px solid var(--line);
}
.landing-page[data-v-a08971ce] .language-dropdown { background: #fff; border: 1px solid var(--line); box-shadow: var(--shadow);
}

/* FAQ — refined to match the design language (lighter, premium) */
.landing-page[data-v-a08971ce] .faq-section { padding: 50px 0 100px; background: transparent;
}
.landing-page[data-v-a08971ce] .faq-section .section-title { font-size: clamp(32px, 4vw, 50px); font-weight: 600; letter-spacing: -0.035em; color: var(--ink); margin: 0 0 14px;
}
.landing-page[data-v-a08971ce] .faq-section .section-subtitle { font-size: clamp(17px, 1.8vw, 20px); color: var(--muted);
}
.landing-page[data-v-a08971ce] .faq-list { max-width: 760px; margin-top: 44px;
}
.landing-page[data-v-a08971ce] .faq-item {
  background: var(--card); border: 1px solid var(--line); border-radius: 16px;
  margin-bottom: 10px; overflow: hidden;
  box-shadow: 0 12px 32px -26px rgba(31,41,51,0.32);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.landing-page[data-v-a08971ce] .faq-item:hover { border-color: rgba(43,130,240,0.35);
}
.landing-page[data-v-a08971ce] .faq-item.active { border-color: var(--violet); box-shadow: 0 18px 44px -26px rgba(43,130,240,0.45);
}
.landing-page[data-v-a08971ce] .faq-question {
  padding: 19px 24px; background: transparent; color: var(--ink);
  font-size: 16.5px; font-weight: 600; letter-spacing: -0.01em;
}
.landing-page[data-v-a08971ce] .faq-question:hover, .landing-page[data-v-a08971ce] .faq-item.active .faq-question { color: var(--violet);
}
.landing-page[data-v-a08971ce] .faq-icon {
  width: 30px; height: 30px; padding: 9px; box-sizing: border-box;
  border-radius: 50%; background: rgba(43,130,240,0.1); color: var(--violet);
  margin-left: 16px; flex-shrink: 0; transition: background 0.2s ease, color 0.2s ease;
}
.landing-page[data-v-a08971ce] .faq-item.active .faq-icon { background: var(--violet); color: #fff;
}
.landing-page[data-v-a08971ce] .faq-answer { padding: 0 24px 22px;
}
.landing-page[data-v-a08971ce] .faq-answer p { color: var(--muted); font-size: 15px; line-height: 1.65; margin: 0;
}

/* Footer — light to match */
.landing-page[data-v-a08971ce] .footer { background: var(--bg); border-top: 1px solid var(--line);
}
.landing-page[data-v-a08971ce] .footer-logo img { filter: brightness(0) saturate(100%);
}
.landing-page[data-v-a08971ce] .footer-description { color: var(--muted);
}
.landing-page[data-v-a08971ce] .footer-heading { color: var(--ink);
}
.landing-page[data-v-a08971ce] .footer-links a, .landing-page[data-v-a08971ce] .footer-links span { color: var(--muted);
}
.landing-page[data-v-a08971ce] .footer-links a:hover { color: var(--violet);
}
.landing-page[data-v-a08971ce] .social-icon { background: rgba(31,41,51,0.06); color: var(--muted);
}
.landing-page[data-v-a08971ce] .social-icon:hover { background: var(--violet); color: #fff;
}
.landing-page[data-v-a08971ce] .footer-bottom { border-top-color: var(--line);
}
.landing-page[data-v-a08971ce] .footer-bottom p { color: var(--muted);
}
.landing-page[data-v-a08971ce] .footer-legal-links a { color: var(--muted);
}
.landing-page[data-v-a08971ce] .footer-legal-links a:hover { color: var(--ink);
}
.landing-page[data-v-a08971ce] .footer-legal-links .separator { color: var(--line);
}

/* ===================== RESPONSIVE ===================== */
@media (max-width: 1024px) {
.mobile-hero-cta[data-v-a08971ce] { display: none;
}
.hero-content[data-v-a08971ce] { grid-template-columns: 1fr; gap: 30px;
}
.hero-text[data-v-a08971ce] { order: 1;
}
.hero-image-desktop[data-v-a08971ce] { display: block; order: 2;
}
.hero-image-mobile[data-v-a08971ce] { display: none;
}
.hero-image-desktop .hero-visual[data-v-a08971ce] { max-width: 300px; margin: 0 auto;
}
.hero-image-desktop img[data-v-a08971ce] { max-width: 300px;
}
.hfloat-result[data-v-a08971ce] { bottom: 2%; left: 0;
}
.hfloat-acc[data-v-a08971ce] { top: 46%; right: 0;
}
.hfloat-speed[data-v-a08971ce] { top: 0; left: 0;
}
.ind-grid[data-v-a08971ce] { grid-template-columns: 1fr; gap: 30px; margin-top: 44px;
}
.industry-row[data-v-a08971ce] { grid-template-columns: 1fr; gap: 28px;
}
.industry-row:nth-child(even) .industry-text[data-v-a08971ce] { order: 0;
}
.industry-row:nth-child(even) .industry-visual[data-v-a08971ce] { order: 0;
}
.industry-visual[data-v-a08971ce] { aspect-ratio: 16 / 10; padding: 32px;
}
.industry-blocks[data-v-a08971ce] { gap: 44px; margin-top: 50px;
}
.benefits-stage[data-v-a08971ce] { padding: 40px 22px 44px; gap: 30px;
}
.benefits-window[data-v-a08971ce] { grid-template-columns: 1fr; gap: 16px;
}
.benefits-copy[data-v-a08971ce] { text-align: center;
}
.benefits-copy .section-subtitle[data-v-a08971ce] { margin: 0 auto;
}
  /* mobile benefit cards: slightly tighter + slide-up reveal on scroll */
.benefits-window .benefit-card[data-v-a08971ce] { padding: 30px 28px 32px;
}
.benefit-card.m-reveal[data-v-a08971ce] { opacity: 0; transform: translateY(30px) scale(0.98); transition: opacity 0.55s ease, transform 0.6s cubic-bezier(0.22,0.7,0.2,1);
}
.benefit-card.m-in[data-v-a08971ce] { opacity: 1; transform: none;
}
.time-savings-grid[data-v-a08971ce] { grid-template-columns: 1fr; gap: 18px;
}
.vs-divider[data-v-a08971ce] { display: none;
}
.savings-highlight[data-v-a08971ce] { grid-template-columns: 1fr; gap: 18px;
}
.roi-breakdown[data-v-a08971ce] { grid-template-columns: 1fr; gap: 14px;
}
.before-after-slider[data-v-a08971ce] { height: 420px;
}
.steps-timeline[data-v-a08971ce] { grid-template-columns: 1fr; gap: 12px;
}
.step-item[data-v-a08971ce] { aspect-ratio: 1 / 1; width: 100%; max-width: 280px; justify-self: center; padding: 28px 22px; gap: 18px;
}
.step-visual[data-v-a08971ce] { min-height: auto;
}
.step-arrow[data-v-a08971ce] { padding: 4px 0; width: auto; margin: 0 auto; justify-self: center;
}
.step-arrow svg[data-v-a08971ce] { transform: rotate(90deg);
}
  /* source chips → 2×2 square chips inside the smaller card */
.step-visual .pg-sources[data-v-a08971ce] { grid-template-columns: repeat(2, 1fr); gap: 10px; width: 100%; max-width: 180px;
}
.step-visual .pg-chip[data-v-a08971ce] { width: auto; height: auto; aspect-ratio: 1 / 1;
}
.step-visual .pg-fmt[data-v-a08971ce] { font-size: 12px;
}
.roi-calculator[data-v-a08971ce] { padding: 34px 22px;
}

  /* power grid → stack vertically */
.powergrid[data-v-a08971ce] { grid-template-columns: 1fr; gap: 22px; justify-items: center;
}
.pg-wires[data-v-a08971ce] { display: none;
}
.pg-sources[data-v-a08971ce] { grid-template-columns: repeat(4, 1fr); gap: 10px;
}
.pg-sources .pg-chip[data-v-a08971ce]:nth-child(7) { grid-column: auto;
}
.pg-result[data-v-a08971ce] { flex-direction: column; justify-self: center;
}
.grid-title[data-v-a08971ce] { margin-bottom: 40px;
}

  /* developer card → stack */
.dev-section .container[data-v-a08971ce] { padding: 34px 22px;
}
.dev-card[data-v-a08971ce] { padding: 0;
}
.dev-grid[data-v-a08971ce] { grid-template-columns: 1fr; gap: 30px;
}
.dev-code[data-v-a08971ce] { font-size: 12px;
}
  /* slide the code editor up (not sideways) so it never causes horizontal scroll */
.dev-card.reveal .dev-editor[data-v-a08971ce] { transform: translateY(28px) scale(0.98);
}

  /* showcase dashboards → stack */
.showcase-section .container[data-v-a08971ce] { padding: 28px 16px;
}
.sc-row[data-v-a08971ce], .sc-row--imgright[data-v-a08971ce] { grid-template-columns: 1fr; gap: 28px;
}
.sc-row--imgright .sc-copy[data-v-a08971ce] { order: 0;
}
.dash-nav[data-v-a08971ce] { gap: 12px; overflow-x: auto;
}
.dash-tr[data-v-a08971ce] { font-size: 11.5px;
}
  /* invoice table → fit narrow screens (hide header + actions, auto columns so nothing overlaps) */
.dash-thead[data-v-a08971ce] { display: none;
}
.dash-r[data-v-a08971ce] { grid-template-columns: 20px 1fr auto auto; gap: 9px; padding: 10px 12px;
}
.th-act[data-v-a08971ce], .r-act[data-v-a08971ce] { display: none;
}
.r-st[data-v-a08971ce] { justify-self: end; font-size: 9.5px; padding: 3px 8px;
}
.r-amt b[data-v-a08971ce] { font-size: 12.5px;
}
.r-amt small[data-v-a08971ce], .r-amt i[data-v-a08971ce] { font-size: 9.5px;
}
.r-info b[data-v-a08971ce] { font-size: 12.5px;
}
.r-info i[data-v-a08971ce] { font-size: 11px;
}
}


/* Billing toggle */
.billing-toggle[data-v-417748c4] { display: flex; align-items: center; justify-content: center; gap: 16px; margin-bottom: 44px; font-weight: 600; color: var(--muted); font-size: 15px;
}
.billing-toggle span.active[data-v-417748c4] { color: var(--ink);
}
.save-badge[data-v-417748c4] { display: inline-block; margin-left: 6px; padding: 3px 9px; border-radius: var(--pill); background: rgba(16,185,129,0.14); color: #0f9b6a; font-size: 11px; font-weight: 700;
}
.toggle-switch[data-v-417748c4] { position: relative; display: inline-block; width: 52px; height: 28px;
}
.toggle-switch input[data-v-417748c4] { opacity: 0; width: 0; height: 0;
}
.slider[data-v-417748c4] { position: absolute; inset: 0; background: #d7dce4; border-radius: var(--pill); cursor: pointer; transition: background 0.2s ease;
}
.slider[data-v-417748c4]::before { content: ''; position: absolute; height: 22px; width: 22px; left: 3px; top: 3px; background: #fff; border-radius: 50%; transition: transform 0.2s ease; box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}
.toggle-switch input:checked + .slider[data-v-417748c4] { background: var(--violet);
}
.toggle-switch input:checked + .slider[data-v-417748c4]::before { transform: translateX(24px);
}

/* Pricing cards */
.pricing-grid[data-v-417748c4] { display: flex; flex-wrap: wrap; justify-content: center; align-items: stretch; gap: 22px; max-width: 1100px; margin: 0 auto;
}
.price-card[data-v-417748c4] {
  position: relative; background: var(--card); border: 1px solid var(--line); border-radius: var(--radius);
  padding: 34px 30px; box-shadow: 0 26px 60px -38px rgba(31,41,51,0.32);
  flex: 1 1 300px; max-width: 340px;
  display: flex; flex-direction: column; transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}
.price-card[data-v-417748c4]:hover { transform: translateY(-6px); box-shadow: 0 36px 80px -36px rgba(31,41,51,0.4);
}
.price-card.featured[data-v-417748c4] { border-color: var(--violet); box-shadow: 0 36px 80px -34px rgba(43,130,240,0.45);
}
.featured-badge[data-v-417748c4] { position: absolute; top: -13px; left: 50%; transform: translateX(-50%); background: var(--violet); color: #fff; font-size: 12px; font-weight: 700; padding: 6px 16px; border-radius: var(--pill); white-space: nowrap;
}
.plan-name[data-v-417748c4] { font-size: 21px; font-weight: 700; color: var(--ink);
}
.plan-desc[data-v-417748c4] { color: var(--muted); font-size: 14px; margin: 6px 0 18px; line-height: 1.5; min-height: 42px;
}
.plan-price[data-v-417748c4] { display: flex; align-items: baseline; gap: 2px; margin-bottom: 4px;
}
.plan-price .currency[data-v-417748c4] { font-size: 22px; font-weight: 700; color: var(--ink);
}
.plan-price .amount[data-v-417748c4] { font-size: 46px; font-weight: 800; letter-spacing: -0.03em; color: var(--ink); line-height: 1;
}
.plan-price .period[data-v-417748c4] { font-size: 15px; color: var(--muted); font-weight: 500;
}
.yearly-note[data-v-417748c4] { font-size: 12.5px; color: var(--muted); margin: 0 0 18px;
}
.plan-button[data-v-417748c4] { width: 100%; margin: 18px 0 22px;
}
.plan-features[data-v-417748c4] { list-style: none; margin: 0; padding: 22px 0 0; border-top: 1px solid var(--line); display: flex; flex-direction: column; gap: 12px; flex: 1;
}
.plan-features li[data-v-417748c4] { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; color: var(--ink); line-height: 1.45;
}
.plan-features li svg[data-v-417748c4] { color: var(--violet); margin-top: 2px; flex-shrink: 0;
}
.plan-info[data-v-417748c4] { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--line);
}
.plan-info p[data-v-417748c4] { font-size: 12.5px; color: var(--muted); margin: 2px 0;
}

/* FAQ */
.faq-grid[data-v-417748c4] { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px;
}
.faq-card[data-v-417748c4] { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius-sm); padding: 24px 26px; box-shadow: 0 18px 44px -34px rgba(31,41,51,0.3);
}
.faq-card h4[data-v-417748c4] { font-size: 16px; font-weight: 700; color: var(--ink); margin: 0 0 8px; letter-spacing: -0.01em;
}
.cta-buttons[data-v-417748c4] { display: inline-flex; gap: 14px; flex-wrap: wrap; justify-content: center;
}
@media (max-width: 768px) {
.faq-grid[data-v-417748c4] { grid-template-columns: 1fr;
}
}

/* page-specific bits — the rest comes from the shared .lp-page theme */
.stats-grid[data-v-9297bf6a] { gap: 16px;
}
.stat[data-v-9297bf6a] {
  background: var(--card); border: 1px solid var(--line); border-radius: var(--radius-sm);
  padding: 30px 24px; text-align: center; box-shadow: 0 26px 60px -38px rgba(31,41,51,0.32);
}
.stat .lp-ico[data-v-9297bf6a] { margin: 0 auto 16px;
}
.stat-num[data-v-9297bf6a] { font-size: 34px; font-weight: 700; letter-spacing: -0.03em; color: var(--ink);
}
.stat-label[data-v-9297bf6a] { font-size: 14px; color: var(--muted); margin-top: 4px;
}
.story-grid[data-v-9297bf6a] { display: grid; grid-template-columns: 1fr 1.05fr; gap: 56px; align-items: center;
}
/* ===== animated "invoice scanner" visual ===== */
.story-visual[data-v-9297bf6a] {
  position: relative; display: flex; align-items: center; justify-content: center;
  padding: 30px 26px;
}
/* animated "our journey" timeline — builds itself, dots gently pulse */
.journey-card[data-v-9297bf6a] {
  position: relative; width: 100%; max-width: 420px;
  background: #fff; border: 1px solid var(--line); border-radius: 22px;
  padding: 32px 32px 28px; box-shadow: 0 40px 80px -34px rgba(31,41,51,0.5);
}
.jc-head[data-v-9297bf6a] { display: flex; align-items: center; gap: 14px; padding-bottom: 22px; border-bottom: 1px solid var(--line); margin-bottom: 26px;
}
.jc-logo[data-v-9297bf6a] { width: 50px; height: 50px; border-radius: 13px; background: #f4f7fc; border: 1px solid var(--line); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.jc-logo img[data-v-9297bf6a] { width: 30px; height: 30px;
}
.jc-head-txt b[data-v-9297bf6a] { display: block; font-size: 18px; font-weight: 800; color: var(--ink);
}
.jc-head-txt i[data-v-9297bf6a] { font-style: normal; font-size: 13.5px; color: var(--muted);
}
.jc-timeline[data-v-9297bf6a] { position: relative; padding-left: 34px;
}
.jc-line[data-v-9297bf6a] { position: absolute; left: 8px; top: 9px; bottom: 9px; width: 3px; border-radius: 3px; background: linear-gradient(180deg, #5aa2ff, #7c5cff); transform-origin: top; transform: scaleY(0); animation: jcLine-9297bf6a 1.8s cubic-bezier(0.6,0,0.2,1) 0.2s forwards;
}
.jc-item[data-v-9297bf6a] { position: relative; margin-bottom: 24px; opacity: 0; transform: translateX(10px); animation: jcItem-9297bf6a 0.55s cubic-bezier(0.22,0.7,0.2,1) forwards;
}
.jc-item[data-v-9297bf6a]:last-child { margin-bottom: 0;
}
.jc-item.i1[data-v-9297bf6a] { animation-delay: 0.5s;
}
.jc-item.i2[data-v-9297bf6a] { animation-delay: 0.9s;
}
.jc-item.i3[data-v-9297bf6a] { animation-delay: 1.3s;
}
.jc-item.i4[data-v-9297bf6a] { animation-delay: 1.7s;
}
.jc-dot[data-v-9297bf6a] { position: absolute; left: -34px; top: 3px; width: 16px; height: 16px; border-radius: 50%; background: #fff; border: 3px solid var(--violet); animation: jcPulse-9297bf6a 2.6s ease-in-out infinite;
}
.jc-item.i2 .jc-dot[data-v-9297bf6a] { animation-delay: 0.5s;
}
.jc-item.i3 .jc-dot[data-v-9297bf6a] { animation-delay: 1s;
}
.jc-item.i4 .jc-dot[data-v-9297bf6a] { animation-delay: 1.5s;
}
.jc-dot.green[data-v-9297bf6a] { border-color: #10b981; animation-name: jcPulseG-9297bf6a;
}
.jc-text b[data-v-9297bf6a] { display: block; font-size: 16px; font-weight: 800; color: var(--ink); letter-spacing: -0.01em;
}
.jc-text span[data-v-9297bf6a] { font-size: 14px; color: var(--muted); line-height: 1.45;
}
@keyframes jcLine-9297bf6a {
to { transform: scaleY(1);
}
}
@keyframes jcItem-9297bf6a {
to { opacity: 1; transform: none;
}
}
@keyframes jcPulse-9297bf6a {
0%,100% { box-shadow: 0 0 0 4px rgba(43,130,240,0.12);
}
50% { box-shadow: 0 0 0 8px rgba(43,130,240,0.03);
}
}
@keyframes jcPulseG-9297bf6a {
0%,100% { box-shadow: 0 0 0 4px rgba(16,185,129,0.14);
}
50% { box-shadow: 0 0 0 8px rgba(16,185,129,0.03);
}
}

/* floating milestone chips */
.ex-chip[data-v-9297bf6a] { position: absolute; display: flex; align-items: center; gap: 10px; background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 9px 13px; box-shadow: 0 18px 40px -22px rgba(31,41,51,0.45); animation: floaty-9297bf6a 5s ease-in-out infinite;
}
.ex-chip b[data-v-9297bf6a] { display: block; font-size: 14px; font-weight: 700; color: var(--ink); line-height: 1.1;
}
.ex-chip i[data-v-9297bf6a] { font-style: normal; font-size: 11px; color: var(--muted);
}
.ex-ico[data-v-9297bf6a] { width: 30px; height: 30px; border-radius: 9px; display: inline-flex; align-items: center; justify-content: center; color: #fff; font-size: 12px; flex-shrink: 0;
}
.ex-ico.amber[data-v-9297bf6a] { background: #f59e0b;
}
.ex-ico.green[data-v-9297bf6a] { background: #10b981;
}
.ex-ico.violet[data-v-9297bf6a] { background: #7c5cff;
}
.ex-found[data-v-9297bf6a] { top: 16px; right: -10px; animation-delay: -1.2s;
}
.ex-rate[data-v-9297bf6a] { bottom: 28px; right: -14px; animation-delay: -3s;
}
@keyframes floaty-9297bf6a {
0%,100% { transform: translateY(0);
}
50% { transform: translateY(-9px);
}
}
@media (prefers-reduced-motion: reduce) {
.jc-line[data-v-9297bf6a], .jc-item[data-v-9297bf6a], .jc-dot[data-v-9297bf6a], .ex-chip[data-v-9297bf6a] { animation: none !important;
}
.jc-line[data-v-9297bf6a] { transform: scaleY(1);
}
.jc-item[data-v-9297bf6a] { opacity: 1; transform: none;
}
}
@media (max-width: 1024px) {
.story-visual[data-v-9297bf6a] { padding: 24px 16px;
}
}
.story-content .lp-h2[data-v-9297bf6a] { margin: 4px 0 16px;
}
.story-text[data-v-9297bf6a] { margin-bottom: 26px; font-size: 16px;
}
.story-highlights[data-v-9297bf6a] { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px;
}
.story-highlights li[data-v-9297bf6a] { display: flex; align-items: center; gap: 12px; font-size: 15.5px; font-weight: 600; color: var(--ink);
}
.hl-tick[data-v-9297bf6a] {
  width: 28px; height: 28px; border-radius: 50%; flex-shrink: 0;
  background: rgba(43,130,240,0.12); color: var(--violet);
  display: inline-flex; align-items: center; justify-content: center; font-size: 12px;
}
.team-card[data-v-9297bf6a] { text-align: center;
}
.team-card .lp-h3[data-v-9297bf6a] { margin-bottom: 4px;
}
.team-avatar[data-v-9297bf6a] {
  width: 72px; height: 72px; border-radius: 20px; margin: 0 auto 18px;
  display: inline-flex; align-items: center; justify-content: center; color: #fff; font-size: 28px;
}
.team-avatar.blue[data-v-9297bf6a]   { background: linear-gradient(150deg, #5aa2ff, #2b82f0);
}
.team-avatar.green[data-v-9297bf6a]  { background: linear-gradient(150deg, #34d399, #10b981);
}
.team-avatar.violet[data-v-9297bf6a] { background: linear-gradient(150deg, #a78bfa, #7c5cff);
}
.team-role[data-v-9297bf6a] { color: var(--violet); font-weight: 600; font-size: 14px; margin: 0 0 10px;
}
.cta-buttons[data-v-9297bf6a] { display: inline-flex; gap: 14px; flex-wrap: wrap; justify-content: center;
}
.cta-secondary[data-v-9297bf6a] { background: rgba(255,255,255,0.1); color: #fff; border-color: rgba(255,255,255,0.25);
}
.cta-secondary[data-v-9297bf6a]:hover { background: rgba(255,255,255,0.18); color: #fff; border-color: rgba(255,255,255,0.4);
}
@media (max-width: 1024px) {
.story-grid[data-v-9297bf6a] { grid-template-columns: 1fr; gap: 32px;
}
}

.contact-grid[data-v-5d5a8de3] { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 32px; align-items: start;
}
.form-section[data-v-5d5a8de3], .info-section[data-v-5d5a8de3] { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius); padding: 34px 32px; box-shadow: 0 26px 60px -40px rgba(31,41,51,0.3);
}
.form-section .lp-h3[data-v-5d5a8de3], .info-section .lp-h3[data-v-5d5a8de3] { margin-bottom: 22px;
}
.contact-form[data-v-5d5a8de3] { display: flex; flex-direction: column; gap: 18px;
}
.form-group[data-v-5d5a8de3] { display: flex; flex-direction: column; gap: 7px;
}
.form-group label[data-v-5d5a8de3] { font-size: 13.5px; font-weight: 600; color: var(--ink);
}
.form-group input[data-v-5d5a8de3], .form-group textarea[data-v-5d5a8de3] {
  width: 100%; padding: 13px 16px; border: 1px solid var(--line); border-radius: 12px;
  background: #fbfbfd; color: var(--ink); font-size: 15px; font-family: inherit;
  transition: border-color 0.2s ease, box-shadow 0.2s ease; resize: vertical;
}
.form-group input[data-v-5d5a8de3]:focus, .form-group textarea[data-v-5d5a8de3]:focus { outline: none; border-color: var(--violet); box-shadow: 0 0 0 3px rgba(43,130,240,0.12); background: #fff;
}
.form-group input[data-v-5d5a8de3]::placeholder, .form-group textarea[data-v-5d5a8de3]::placeholder { color: #aab1bd;
}
.btn-submit[data-v-5d5a8de3] { width: 100%; margin-top: 6px;
}
.btn-submit[data-v-5d5a8de3]:disabled { opacity: 0.7; cursor: default;
}
.info-cards[data-v-5d5a8de3] { display: flex; flex-direction: column; gap: 16px;
}
.info-card[data-v-5d5a8de3] { display: flex; gap: 16px; align-items: flex-start;
}
.info-card .lp-ico[data-v-5d5a8de3] { margin-bottom: 0; width: 48px; height: 48px; font-size: 18px; flex-shrink: 0;
}
.info-content h3[data-v-5d5a8de3] { font-size: 15px; font-weight: 700; color: var(--ink); margin: 0 0 4px;
}
.info-content a[data-v-5d5a8de3], .info-content p[data-v-5d5a8de3] { display: block; color: var(--muted); font-size: 14px; text-decoration: none; margin: 1px 0;
}
.info-content a[data-v-5d5a8de3]:hover { color: var(--violet);
}
.faq-box[data-v-5d5a8de3] { display: flex; gap: 16px; align-items: flex-start; margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--line);
}
.faq-box .lp-ico[data-v-5d5a8de3] { margin-bottom: 0; width: 48px; height: 48px; font-size: 18px; flex-shrink: 0;
}
.faq-box h3[data-v-5d5a8de3] { font-size: 15px; font-weight: 700; color: var(--ink); margin: 0 0 4px;
}
.map-container[data-v-5d5a8de3] { border-radius: var(--radius); overflow: hidden; border: 1px solid var(--line); box-shadow: var(--shadow);
}
.map-container iframe[data-v-5d5a8de3] { display: block;
}
@media (max-width: 1024px) {
.contact-grid[data-v-5d5a8de3] { grid-template-columns: 1fr;
}
}

.fmt-card[data-v-2353a39e] { display: flex; flex-direction: column;
}
.fmt-head[data-v-2353a39e] { display: flex; align-items: center; gap: 14px; margin-bottom: 16px;
}
.fmt-head .lp-ico[data-v-2353a39e] { margin-bottom: 0; width: 50px; height: 50px; font-size: 20px; flex-shrink: 0;
}
.fmt-title[data-v-2353a39e] { font-size: 17px; font-weight: 700; color: var(--ink); margin: 0 0 4px;
}
.fmt-badge[data-v-2353a39e] { display: inline-block; padding: 3px 10px; border-radius: var(--pill); background: rgba(43,130,240,0.1); color: var(--violet); font-size: 11px; font-weight: 700; letter-spacing: 0.02em;
}
.fmt-card .lp-text[data-v-2353a39e] { flex: 1; margin-bottom: 16px; font-size: 14.5px;
}
.fmt-features[data-v-2353a39e] { list-style: none; margin: 0; padding: 16px 0 0; border-top: 1px solid var(--line); display: flex; flex-direction: column; gap: 10px;
}
.fmt-features li[data-v-2353a39e] { display: flex; align-items: flex-start; gap: 9px; font-size: 13.5px; color: var(--ink);
}
.fmt-features li svg[data-v-2353a39e] { color: var(--violet); margin-top: 2px; flex-shrink: 0;
}
.custom-card[data-v-2353a39e], .learn-card[data-v-2353a39e] { display: flex; align-items: center; gap: 22px; background: var(--card); border: 1px solid var(--line); border-radius: var(--radius); padding: 28px 32px; box-shadow: 0 22px 54px -40px rgba(31,41,51,0.3);
}
.custom-card .lp-ico[data-v-2353a39e], .learn-card .lp-ico[data-v-2353a39e] { margin-bottom: 0; flex-shrink: 0;
}
.custom-text[data-v-2353a39e], .learn-text[data-v-2353a39e] { flex: 1;
}
.custom-text .lp-h3[data-v-2353a39e], .learn-text .lp-h3[data-v-2353a39e] { margin-bottom: 6px;
}
.custom-btn[data-v-2353a39e] { flex-shrink: 0;
}
.learn-link[data-v-2353a39e] { display: inline-flex; align-items: center; gap: 8px; color: var(--violet); font-weight: 600; font-size: 14.5px; flex-shrink: 0; transition: gap 0.2s ease;
}
.learn-card:hover .learn-link[data-v-2353a39e] { gap: 12px;
}
.cta-buttons[data-v-2353a39e] { display: inline-flex; gap: 14px; flex-wrap: wrap; justify-content: center;
}
.cta-secondary[data-v-2353a39e] { background: rgba(255,255,255,0.1); color: #fff; border-color: rgba(255,255,255,0.25);
}
.cta-secondary[data-v-2353a39e]:hover { background: rgba(255,255,255,0.18); color: #fff; border-color: rgba(255,255,255,0.4);
}
@media (max-width: 768px) {
.custom-card[data-v-2353a39e], .learn-card[data-v-2353a39e] { flex-direction: column; align-items: flex-start; gap: 16px;
}
}

.res-card[data-v-a208e25b] { display: flex; flex-direction: column; text-decoration: none;
}
.res-card .lp-h3[data-v-a208e25b] { margin-bottom: 8px;
}
.res-card .lp-text[data-v-a208e25b] { flex: 1; margin-bottom: 18px;
}
.res-link[data-v-a208e25b] { display: inline-flex; align-items: center; gap: 8px; color: var(--violet); font-weight: 600; font-size: 14.5px; transition: gap 0.2s ease;
}
.res-card:hover .res-link[data-v-a208e25b] { gap: 12px;
}
.cta-buttons[data-v-a208e25b] { display: inline-flex; gap: 14px; flex-wrap: wrap; justify-content: center;
}
.cta-secondary[data-v-a208e25b] { background: rgba(255,255,255,0.1); color: #fff; border-color: rgba(255,255,255,0.25);
}
.cta-secondary[data-v-a208e25b]:hover { background: rgba(255,255,255,0.18); color: #fff; border-color: rgba(255,255,255,0.4);
}

.guides-toolbar[data-v-006bfd0d] { margin-bottom: 40px; display: flex; flex-direction: column; gap: 18px; align-items: center;
}
.search-box[data-v-006bfd0d] { position: relative; width: 100%; max-width: 520px;
}
.search-box input[data-v-006bfd0d] { width: 100%; padding: 14px 44px; border: 1px solid var(--line); border-radius: var(--pill); background: #fff; color: var(--ink); font-size: 15px; font-family: inherit; transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.search-box input[data-v-006bfd0d]:focus { outline: none; border-color: var(--violet); box-shadow: 0 0 0 3px rgba(43,130,240,0.12);
}
.search-icon[data-v-006bfd0d] { position: absolute; left: 18px; top: 50%; transform: translateY(-50%); color: var(--muted);
}
.clear-search[data-v-006bfd0d] { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); background: none; border: none; color: var(--muted); cursor: pointer; font-size: 16px;
}
.filters[data-v-006bfd0d] { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center;
}
.filter-pill[data-v-006bfd0d] { padding: 9px 18px; border-radius: var(--pill); border: 1px solid var(--line); background: #fff; color: var(--muted); font-size: 14px; font-weight: 600; cursor: pointer; transition: all 0.2s ease;
}
.filter-pill[data-v-006bfd0d]:hover { border-color: var(--violet); color: var(--violet);
}
.filter-pill.active[data-v-006bfd0d] { background: var(--violet); border-color: var(--violet); color: #fff;
}
.tutorial-card[data-v-006bfd0d] { padding: 0; overflow: hidden; display: flex; flex-direction: column;
}
.video-thumb[data-v-006bfd0d] { height: 150px; position: relative; display: flex; align-items: center; justify-content: center;
}
.video-thumb.g1[data-v-006bfd0d] { background: linear-gradient(150deg, #5aa2ff, #2b82f0);
}
.video-thumb.g2[data-v-006bfd0d] { background: linear-gradient(150deg, #34d399, #10b981);
}
.video-thumb.g3[data-v-006bfd0d] { background: linear-gradient(150deg, #a78bfa, #7c5cff);
}
.video-thumb.g4[data-v-006bfd0d] { background: linear-gradient(150deg, #fbbf24, #f59e0b);
}
.video-thumb.g5[data-v-006bfd0d] { background: linear-gradient(150deg, #22d3ee, #06b6d4);
}
.video-thumb.g6[data-v-006bfd0d] { background: linear-gradient(150deg, #f472b6, #ec4899);
}
.play-icon[data-v-006bfd0d] { font-size: 46px; color: rgba(255,255,255,0.92);
}
.duration[data-v-006bfd0d] { position: absolute; bottom: 12px; right: 12px; background: rgba(0,0,0,0.55); color: #fff; font-size: 12px; font-weight: 600; padding: 3px 9px; border-radius: var(--pill);
}
.tutorial-body[data-v-006bfd0d] { padding: 22px 26px 26px; display: flex; flex-direction: column; flex: 1;
}
.tutorial-cat[data-v-006bfd0d] { color: var(--violet); font-weight: 700; font-size: 12px; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 8px;
}
.tutorial-card .lp-h3[data-v-006bfd0d] { font-size: 18px; margin-bottom: 8px; line-height: 1.25;
}
.tutorial-card .lp-text[data-v-006bfd0d] { flex: 1; margin-bottom: 14px; font-size: 14px;
}
.watch-link[data-v-006bfd0d] { display: inline-flex; align-items: center; gap: 8px; color: var(--violet); font-weight: 600; font-size: 14px; transition: gap 0.2s ease;
}
.tutorial-card:hover .watch-link[data-v-006bfd0d] { gap: 12px;
}
.no-results[data-v-006bfd0d] { text-align: center; color: var(--muted); padding: 40px 0;
}
.cta-buttons[data-v-006bfd0d] { display: inline-flex; gap: 14px; flex-wrap: wrap; justify-content: center;
}
.cta-secondary[data-v-006bfd0d] { background: rgba(255,255,255,0.1); color: #fff; border-color: rgba(255,255,255,0.25);
}
.cta-secondary[data-v-006bfd0d]:hover { background: rgba(255,255,255,0.18); color: #fff; border-color: rgba(255,255,255,0.4);
}

.positions-list[data-v-9ab51efb] { display: flex; flex-direction: column; gap: 16px;
}
.position-card[data-v-9ab51efb] { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius-sm); padding: 26px 28px; box-shadow: 0 18px 44px -34px rgba(31,41,51,0.3); transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.position-card[data-v-9ab51efb]:hover { border-color: rgba(43,130,240,0.35); box-shadow: 0 26px 56px -34px rgba(31,41,51,0.36);
}
.position-header[data-v-9ab51efb] { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; margin-bottom: 12px;
}
.position-header .lp-h3[data-v-9ab51efb] { margin-bottom: 8px;
}
.position-meta[data-v-9ab51efb] { display: flex; gap: 16px; flex-wrap: wrap;
}
.position-meta span[data-v-9ab51efb] { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--muted); font-weight: 500;
}
.apply-btn[data-v-9ab51efb] { flex-shrink: 0; padding: 10px 20px; font-size: 14px;
}
@media (max-width: 600px) {
.position-header[data-v-9ab51efb] { flex-direction: column;
}
.apply-btn[data-v-9ab51efb] { width: 100%;
}
}

.benefits-list[data-v-446ac8da] { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px 32px;
}
.benefit-item[data-v-446ac8da] { display: flex; gap: 14px; align-items: flex-start;
}
.hl-tick[data-v-446ac8da] { width: 30px; height: 30px; border-radius: 50%; flex-shrink: 0; background: rgba(43,130,240,0.12); color: var(--violet); display: inline-flex; align-items: center; justify-content: center; font-size: 13px; margin-top: 2px;
}
.benefit-item h3[data-v-446ac8da] { font-size: 16px; font-weight: 700; color: var(--ink); margin: 0 0 4px;
}
@media (max-width: 768px) {
.benefits-list[data-v-446ac8da] { grid-template-columns: 1fr;
}
}

.blog-card[data-v-f4261b43] { padding: 0; overflow: hidden; display: flex; flex-direction: column;
}
.blog-image[data-v-f4261b43] { height: 150px; position: relative; display: flex; align-items: flex-end; padding: 16px;
}
.blog-image.g1[data-v-f4261b43] { background: linear-gradient(150deg, #5aa2ff, #2b82f0);
}
.blog-image.g2[data-v-f4261b43] { background: linear-gradient(150deg, #34d399, #10b981);
}
.blog-image.g3[data-v-f4261b43] { background: linear-gradient(150deg, #a78bfa, #7c5cff);
}
.blog-image.g4[data-v-f4261b43] { background: linear-gradient(150deg, #fbbf24, #f59e0b);
}
.blog-image.g5[data-v-f4261b43] { background: linear-gradient(150deg, #22d3ee, #06b6d4);
}
.blog-image.g6[data-v-f4261b43] { background: linear-gradient(150deg, #f472b6, #ec4899);
}
.blog-category[data-v-f4261b43] { background: rgba(255,255,255,0.92); color: var(--ink); font-size: 11.5px; font-weight: 700; padding: 5px 12px; border-radius: var(--pill); letter-spacing: 0.02em;
}
.blog-body[data-v-f4261b43] { padding: 24px 26px 26px; display: flex; flex-direction: column; flex: 1;
}
.blog-meta[data-v-f4261b43] { display: flex; gap: 14px; font-size: 12.5px; color: var(--muted); margin-bottom: 10px;
}
.blog-card .lp-h3[data-v-f4261b43] { font-size: 19px; margin-bottom: 8px; line-height: 1.25;
}
.blog-card .lp-text[data-v-f4261b43] { flex: 1; margin-bottom: 16px; font-size: 14.5px;
}
.read-more[data-v-f4261b43] { display: inline-flex; align-items: center; gap: 8px; color: var(--violet); font-weight: 600; font-size: 14px; transition: gap 0.2s ease;
}
.blog-card:hover .read-more[data-v-f4261b43] { gap: 12px;
}
.cta-buttons[data-v-f4261b43] { display: inline-flex; gap: 14px; flex-wrap: wrap; justify-content: center;
}
.cta-secondary[data-v-f4261b43] { background: rgba(255,255,255,0.1); color: #fff; border-color: rgba(255,255,255,0.25);
}
.cta-secondary[data-v-f4261b43]:hover { background: rgba(255,255,255,0.18); color: #fff; border-color: rgba(255,255,255,0.4);
}

.stats-grid[data-v-40a99582] { gap: 16px;
}
.stat[data-v-40a99582] { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius-sm); padding: 30px 24px; text-align: center; box-shadow: 0 26px 60px -38px rgba(31,41,51,0.32);
}
.stat .lp-ico[data-v-40a99582] { margin: 0 auto 16px;
}
.stat-num[data-v-40a99582] { font-size: 32px; font-weight: 700; letter-spacing: -0.03em; color: var(--ink);
}
.stat-label[data-v-40a99582] { font-size: 14px; color: var(--muted); margin-top: 4px;
}
.feat-card[data-v-40a99582] { display: flex; flex-direction: column;
}
.feat-card .lp-h3[data-v-40a99582] { margin-bottom: 8px;
}
.feat-card .lp-text[data-v-40a99582] { flex: 1; margin-bottom: 16px;
}
.feat-link[data-v-40a99582] { display: inline-flex; align-items: center; gap: 8px; color: var(--violet); font-weight: 600; font-size: 14.5px; transition: gap 0.2s ease;
}
.feat-card:hover .feat-link[data-v-40a99582] { gap: 12px;
}
.disc-head[data-v-40a99582] { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 26px; gap: 16px;
}
.view-all[data-v-40a99582] { display: inline-flex; align-items: center; gap: 8px; color: var(--violet); font-weight: 600; font-size: 14.5px; white-space: nowrap;
}
.disc-list[data-v-40a99582] { display: flex; flex-direction: column; gap: 12px;
}
.disc-item[data-v-40a99582] { display: flex; align-items: center; gap: 16px; background: var(--card); border: 1px solid var(--line); border-radius: var(--radius-sm); padding: 18px 22px; box-shadow: 0 16px 40px -34px rgba(31,41,51,0.3); transition: border-color 0.2s ease;
}
.disc-item[data-v-40a99582]:hover { border-color: rgba(43,130,240,0.35);
}
.disc-avatar[data-v-40a99582] { width: 44px; height: 44px; border-radius: 50%; background: rgba(43,130,240,0.1); color: var(--violet); display: inline-flex; align-items: center; justify-content: center; font-size: 18px; flex-shrink: 0;
}
.disc-content[data-v-40a99582] { flex: 1; min-width: 0;
}
.disc-content h4[data-v-40a99582] { font-size: 15.5px; font-weight: 700; color: var(--ink); margin: 0 0 6px;
}
.disc-meta[data-v-40a99582] { display: flex; flex-wrap: wrap; gap: 6px; font-size: 12.5px; color: var(--muted); align-items: center;
}
.disc-meta .author[data-v-40a99582] { color: var(--ink); font-weight: 600;
}
.disc-meta .cat[data-v-40a99582] { color: var(--violet); font-weight: 600;
}
.disc-meta .sep[data-v-40a99582] { opacity: 0.5;
}
.disc-stats[data-v-40a99582] { display: flex; gap: 16px; flex-shrink: 0;
}
.disc-stats span[data-v-40a99582] { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; color: var(--muted); font-weight: 600;
}
.cta-buttons[data-v-40a99582] { display: inline-flex; gap: 14px; flex-wrap: wrap; justify-content: center;
}
.cta-secondary[data-v-40a99582] { background: rgba(255,255,255,0.1); color: #fff; border-color: rgba(255,255,255,0.25);
}
.cta-secondary[data-v-40a99582]:hover { background: rgba(255,255,255,0.18); color: #fff; border-color: rgba(255,255,255,0.4);
}
@media (max-width: 600px) {
.disc-item[data-v-40a99582] { flex-wrap: wrap;
}
.disc-stats[data-v-40a99582] { width: 100%; padding-left: 60px;
}
}

.company-selector[data-v-81e617e5] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.selector-label[data-v-81e617e5] {
  font-size: 13px;
  font-weight: 600;
  color: var(--gray-dark);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.selector-wrapper[data-v-81e617e5] {
  position: relative;
}
.selector-input[data-v-81e617e5] {
  position: relative;
  display: flex;
  align-items: center;
  padding: 10px 40px 10px 14px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: white;
  cursor: pointer;
  transition: all 0.2s ease;
  min-height: 42px;
}
.selector-input[data-v-81e617e5]:hover:not(.disabled) {
  border-color: var(--gray-light);
}
.selector-input.open[data-v-81e617e5] {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.company-selector.active-filter .selector-input[data-v-81e617e5]:not(.open) {
  border: 2px solid #0ea5e9;
  background: rgba(14, 165, 233, 0.05);
}
.selector-input.disabled[data-v-81e617e5] {
  background: var(--bg-gray);
  cursor: not-allowed;
  opacity: 0.6;
}
.search-input[data-v-81e617e5] {
  flex: 1;
  border: none;
  outline: none;
  font-size: 14px;
  color: var(--text-primary);
  background: transparent;
  padding: 0;
}
.search-input[data-v-81e617e5]::placeholder {
  color: var(--text-light);
}
.selected-value[data-v-81e617e5] {
  flex: 1;
  font-size: 14px;
  color: var(--text-primary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.selector-input:not(.open) .selected-value[data-v-81e617e5]:empty::before {
  content: attr(data-placeholder);
  color: var(--text-light);
}
.dropdown-icon[data-v-81e617e5] {
  position: absolute;
  right: 14px;
  flex-shrink: 0;
  color: var(--text-secondary);
  transition: transform 0.2s ease;
  font-size: 12px;
  pointer-events: none;
}
.dropdown-icon.rotate[data-v-81e617e5] {
  transform: rotate(180deg);
}
.dropdown-menu[data-v-81e617e5] {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  right: 0;
  max-height: 300px;
  background: white;
  border: 1px solid var(--border);
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  overflow: hidden;
}
.dropdown-list[data-v-81e617e5] {
  max-height: 300px;
  overflow-y: auto;
}
.dropdown-item[data-v-81e617e5] {
  padding: 10px 14px;
  cursor: pointer;
  transition: background 0.15s ease;
  border-bottom: 1px solid var(--gray-lighter);
}
.dropdown-item[data-v-81e617e5]:last-child {
  border-bottom: none;
}
.dropdown-item[data-v-81e617e5]:hover,
.dropdown-item.highlighted[data-v-81e617e5] {
  background: var(--primary-light);
}
.dropdown-item.selected[data-v-81e617e5] {
  background: var(--primary-light);
  font-weight: 600;
}
.dropdown-item.clear-option[data-v-81e617e5] {
  font-style: italic;
  color: var(--text-secondary);
  border-bottom: 2px solid var(--border);
}
.dropdown-item.clear-option.selected[data-v-81e617e5] {
  font-style: normal;
  font-weight: 600;
  color: var(--text-primary);
}
.dropdown-item.loading[data-v-81e617e5],
.dropdown-item.empty[data-v-81e617e5] {
  display: flex;
  align-items: center;
  gap: 8px;
  justify-content: center;
  color: var(--text-secondary);
  cursor: default;
  padding: 16px;
}
.dropdown-item.empty-with-action[data-v-81e617e5] {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
  color: var(--text-secondary);
  cursor: default;
  padding: 16px;
}
.empty-message[data-v-81e617e5] {
  text-align: center;
  font-size: 14px;
  color: var(--text-secondary);
}
.btn-create-default[data-v-81e617e5] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 16px;
  background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(14, 165, 233, 0.3);
}
.btn-create-default[data-v-81e617e5]:hover:not(:disabled) {
  background: linear-gradient(135deg, #0284c7 0%, #2563eb 100%);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.4);
}
.btn-create-default[data-v-81e617e5]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none;
}
.btn-create-default svg[data-v-81e617e5] {
  flex-shrink: 0;
}
.dropdown-item.loading[data-v-81e617e5]:hover,
.dropdown-item.empty[data-v-81e617e5]:hover,
.dropdown-item.empty-with-action[data-v-81e617e5]:hover {
  background: white;
}
.company-name[data-v-81e617e5] {
  font-size: 14px;
  color: var(--text-primary);
  font-weight: 500;
}
.company-vat[data-v-81e617e5] {
  font-size: 12px;
  color: var(--text-secondary);
  margin-top: 2px;
}
.spinner-small[data-v-81e617e5] {
  width: 14px;
  height: 14px;
  border: 2px solid var(--border);
  border-top-color: var(--primary);
  border-radius: 50%;
  animation: spin-81e617e5 0.6s linear infinite;
}
@keyframes spin-81e617e5 {
to { transform: rotate(360deg);
}
}
.selector-error[data-v-81e617e5] {
  font-size: 12px;
  color: var(--danger);
  font-style: italic;
}

.type-selector[data-v-c23e01af] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.selector-label[data-v-c23e01af] {
  font-size: 13px;
  font-weight: 600;
  color: var(--gray-dark);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.selector-wrapper[data-v-c23e01af] {
  position: relative;
}
.selector-input[data-v-c23e01af] {
  position: relative;
  display: flex;
  align-items: center;
  padding: 10px 40px 10px 14px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: white;
  cursor: pointer;
  transition: all 0.2s ease;
  min-height: 42px;
}
.selector-input[data-v-c23e01af]:hover:not(.disabled) {
  border-color: var(--gray-light);
}
.selector-input.open[data-v-c23e01af] {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.type-selector.active-filter .selector-input[data-v-c23e01af]:not(.open) {
  border: 2px solid #0ea5e9;
  background: rgba(14, 165, 233, 0.05);
}
.selector-input.disabled[data-v-c23e01af] {
  background: var(--bg-gray);
  cursor: not-allowed;
  opacity: 0.6;
}
.search-input[data-v-c23e01af] {
  flex: 1;
  border: none;
  outline: none;
  font-size: 14px;
  color: var(--text-primary);
  background: transparent;
  padding: 0;
}
.search-input[data-v-c23e01af]::placeholder {
  color: var(--text-light);
}
.selected-value[data-v-c23e01af] {
  flex: 1;
  font-size: 14px;
  color: var(--text-primary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dropdown-icon[data-v-c23e01af] {
  position: absolute;
  right: 14px;
  flex-shrink: 0;
  color: var(--text-secondary);
  transition: transform 0.2s ease;
  font-size: 12px;
  pointer-events: none;
}
.dropdown-icon.rotate[data-v-c23e01af] {
  transform: rotate(180deg);
}
.dropdown-menu[data-v-c23e01af] {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  right: 0;
  max-height: 250px;
  background: white;
  border: 1px solid var(--border);
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  overflow: hidden;
}
.dropdown-list[data-v-c23e01af] {
  max-height: 250px;
  overflow-y: auto;
}
.dropdown-item[data-v-c23e01af] {
  padding: 10px 14px;
  cursor: pointer;
  transition: background 0.15s ease;
  border-bottom: 1px solid var(--gray-lighter);
}
.dropdown-item[data-v-c23e01af]:last-child {
  border-bottom: none;
}
.dropdown-item[data-v-c23e01af]:hover,
.dropdown-item.highlighted[data-v-c23e01af] {
  background: var(--primary-light);
}
.dropdown-item.selected[data-v-c23e01af] {
  background: var(--primary-light);
  font-weight: 600;
}
.dropdown-item.empty[data-v-c23e01af] {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-secondary);
  cursor: default;
  padding: 16px;
}
.dropdown-item.empty[data-v-c23e01af]:hover {
  background: white;
}
.type-name[data-v-c23e01af] {
  font-size: 14px;
  color: var(--text-primary);
}

.modal-overlay[data-v-70abd47d] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  backdrop-filter: blur(4px);
  animation: fadeIn-70abd47d 0.2s ease;
}
@keyframes fadeIn-70abd47d {
from {
    opacity: 0;
}
to {
    opacity: 1;
}
}
.modal-content[data-v-70abd47d] {
  background: white;
  border-radius: 16px;
  padding: 0;
  max-width: 500px;
  width: 90%;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
  animation: slideUp-70abd47d 0.3s ease;
  position: relative;
}
@keyframes slideUp-70abd47d {
from {
    opacity: 0;
    transform: translateY(20px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}
.modal-header[data-v-70abd47d] {
  padding: 24px;
  border-bottom: 1px solid #e2e8f0;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.modal-header h3[data-v-70abd47d] {
  margin: 0;
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
}
.modal-body[data-v-70abd47d] {
  padding: 24px;
}
.modal-description[data-v-70abd47d] {
  margin: 0 0 24px 0;
  color: var(--text-secondary);
  font-size: 15px;
  text-align: center;
}
.error-banner[data-v-70abd47d] {
  background: #fee2e2;
  border: 1px solid #fca5a5;
  border-radius: 8px;
  padding: 12px 16px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 10px;
  color: #dc2626;
  font-size: 14px;
}
.error-banner svg[data-v-70abd47d] {
  flex-shrink: 0;
}
.modal-options[data-v-70abd47d] {
  display: grid;
  gap: 12px;
}
.modal-option-btn[data-v-70abd47d] {
  width: 100%;
  padding: 20px;
  border: 2px solid #e2e8f0;
  border-radius: 12px;
  background: white;
  cursor: pointer;
  text-align: left;
  transition: all 0.2s ease;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.modal-option-btn[data-v-70abd47d]:not(:disabled):hover {
  border-color: var(--primary);
  background: var(--primary-light);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.15);
}
.modal-option-btn[data-v-70abd47d]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.modal-option-btn.disabled[data-v-70abd47d] {
  opacity: 0.5;
  cursor: not-allowed;
}
.option-icon[data-v-70abd47d] {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 8px;
  color: var(--primary);
}
.modal-option-btn h4[data-v-70abd47d] {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  color: var(--text-primary);
  display: flex;
  align-items: center;
  gap: 8px;
}
.premium-badge[data-v-70abd47d] {
  background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
  color: white;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 4px;
  letter-spacing: 0.5px;
}
.modal-option-btn p[data-v-70abd47d] {
  margin: 0;
  font-size: 14px;
  color: var(--text-secondary);
}
.no-scans-warning[data-v-70abd47d] {
  color: #dc2626 !important;
  font-weight: 500;
  font-size: 13px !important;
}
.modal-option-btn.normal-scan[data-v-70abd47d]:not(:disabled):hover {
  border-color: #10b981;
  background: #ecfdf5;
}
.modal-option-btn.normal-scan:not(:disabled):hover h4[data-v-70abd47d] {
  color: #10b981;
}
.modal-option-btn.normal-scan:not(:disabled):hover .option-icon[data-v-70abd47d] {
  color: #10b981;
}
.modal-option-btn.hard-scan[data-v-70abd47d]:not(:disabled):hover {
  border-color: #f59e0b;
  background: #fffbeb;
}
.modal-option-btn.hard-scan:not(:disabled):hover h4[data-v-70abd47d] {
  color: #f59e0b;
}
.modal-option-btn.hard-scan:not(:disabled):hover .option-icon[data-v-70abd47d] {
  color: #f59e0b;
}
.loading-overlay[data-v-70abd47d] {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.95);
  border-radius: 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
}
.loading-spinner[data-v-70abd47d] {
  width: 40px;
  height: 40px;
  border: 4px solid #e2e8f0;
  border-top-color: var(--primary);
  border-radius: 50%;
  animation: spin-70abd47d 1s linear infinite;
}
@keyframes spin-70abd47d {
to { transform: rotate(360deg);
}
}
.loading-overlay p[data-v-70abd47d] {
  margin: 0;
  font-size: 15px;
  font-weight: 500;
  color: var(--text-primary);
}
@media (max-width: 640px) {
.modal-content[data-v-70abd47d] {
    width: 95%;
    margin: 20px;
}
.modal-header[data-v-70abd47d] {
    padding: 20px;
}
.modal-body[data-v-70abd47d] {
    padding: 20px;
}
.modal-option-btn[data-v-70abd47d] {
    padding: 16px;
}
}

.modal-overlay[data-v-60ad6248] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10000;
  animation: fadeIn-60ad6248 0.3s ease;
  padding: 20px;
  overflow-y: auto;
}
.bulgarian-invoice-modal[data-v-60ad6248] {
  background: white;
  border-radius: 12px;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
  max-width: 600px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
  animation: scaleIn-60ad6248 0.3s ease;
}
.modal-header[data-v-60ad6248] {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 24px 24px 20px 24px;
  border-bottom: 1px solid var(--border);
  position: relative;
}
.header-icon[data-v-60ad6248] {
  background: var(--primary);
  color: white;
  width: 48px;
  height: 48px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  flex-shrink: 0;
}
.icon-gas-pump[data-v-60ad6248] {
  /* Optional: remove animation for cleaner look */
}
.header-content[data-v-60ad6248] {
  flex: 1;
}
.header-content h3[data-v-60ad6248] {
  margin: 0 0 4px 0;
  font-size: 18px;
  font-weight: 600;
  color: var(--text-primary);
}
.modal-subtitle[data-v-60ad6248] {
  margin: 0;
  font-size: 14px;
  color: var(--text-secondary);
}
.modal-body[data-v-60ad6248] {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.info-section[data-v-60ad6248] {
  display: flex;
  gap: 12px;
  padding: 12px 16px;
  background: #fef2f2;
  border-left: 4px solid var(--primary);
  border-radius: 8px;
}
.info-icon[data-v-60ad6248] {
  color: var(--primary);
  font-size: 18px;
  flex-shrink: 0;
  margin-top: 2px;
}
.info-section p[data-v-60ad6248] {
  margin: 0;
  font-size: 14px;
  color: var(--text-primary);
  line-height: 1.6;
}
.form-group[data-v-60ad6248] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.form-group label[data-v-60ad6248] {
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
  display: flex;
  align-items: center;
  gap: 8px;
}
.form-group label svg[data-v-60ad6248] {
  font-size: 16px;
  color: var(--primary);
}
.form-select[data-v-60ad6248] {
  padding: 12px 14px;
  border: 2px solid var(--border);
  border-radius: 8px;
  font-size: 14px;
  color: var(--text-primary);
  background: white;
  cursor: pointer;
  transition: all 0.2s ease;
}
.form-select[data-v-60ad6248]:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.form-select[data-v-60ad6248]:hover {
  border-color: var(--primary);
}
.help-text[data-v-60ad6248] {
  margin: 0;
  padding: 12px;
  background: #f8fafc;
  border-radius: 6px;
  font-size: 13px;
  color: var(--text-secondary);
  line-height: 1.6;
}
.help-text strong[data-v-60ad6248] {
  color: var(--text-primary);
}
.summary-box[data-v-60ad6248] {
  background: white;
  border: 2px solid var(--border);
  border-radius: 8px;
  overflow: hidden;
}
.summary-title[data-v-60ad6248] {
  background: var(--primary);
  color: white;
  padding: 12px 16px;
  font-size: 14px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 8px;
}
.summary-content[data-v-60ad6248] {
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.summary-row[data-v-60ad6248] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 14px;
}
.summary-row span[data-v-60ad6248] {
  color: var(--text-secondary);
}
.summary-row strong[data-v-60ad6248] {
  color: var(--text-primary);
  font-size: 15px;
  font-weight: 600;
}
.modal-footer[data-v-60ad6248] {
  display: flex;
  gap: 12px;
  padding: 20px 24px;
  border-top: 1px solid var(--border);
}
.btn-cancel[data-v-60ad6248],
.btn-confirm[data-v-60ad6248] {
  flex: 1;
  padding: 12px 20px;
  border: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all 0.2s;
}
.btn-cancel[data-v-60ad6248] {
  background: white;
  color: var(--text-primary);
  border: 2px solid var(--border);
}
.btn-cancel[data-v-60ad6248]:hover {
  background: #f8fafc;
  border-color: var(--text-secondary);
}
.btn-confirm[data-v-60ad6248] {
  background: var(--primary);
  color: white;
}
.btn-confirm[data-v-60ad6248]:hover:not(:disabled) {
  background: #0284c7;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.btn-confirm[data-v-60ad6248]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.loading-spinner-small[data-v-60ad6248] {
  width: 16px;
  height: 16px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-top-color: white;
  border-radius: 50%;
  animation: spin-60ad6248 0.8s linear infinite;
}
@keyframes fadeIn-60ad6248 {
from {
    opacity: 0;
}
to {
    opacity: 1;
}
}
@keyframes scaleIn-60ad6248 {
from {
    opacity: 0;
    transform: scale(0.9);
}
to {
    opacity: 1;
    transform: scale(1);
}
}
@keyframes spin-60ad6248 {
to {
    transform: rotate(360deg);
}
}

.upload-queue[data-v-3f306912] {
  max-width: 600px;
  margin: 0 auto;
}

/* Toggle Upload Form Buttons */
.btn-toggle-form[data-v-3f306912],
.btn-hide-form[data-v-3f306912] {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 20px;
  height: 45px;
  border: 2px solid var(--primary);
  border-radius: 10px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  margin-bottom: 20px;
  background: white;
  color: var(--primary);
}
.btn-toggle-form[data-v-3f306912]:hover,
.btn-hide-form[data-v-3f306912]:hover {
  background: var(--primary-light);
  transform: translateY(-1px);
}
.btn-hide-form[data-v-3f306912] {
  background: var(--bg-gray);
  border-color: var(--border);
  color: var(--text-secondary);
}
.btn-hide-form[data-v-3f306912]:hover {
  background: var(--light-gray);
  border-color: var(--gray-light);
}
.pdf-processing-banner[data-v-3f306912] {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  padding: 16px 20px;
  border-radius: 12px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 15px;
  font-weight: 500;
  box-shadow: 0 4px 12px rgba(102, 126, 234, 0.3);
  animation: slideDown-3f306912 0.3s ease;
}

/* Bulgarian Invoice Progress Overlay */
.bulgarian-progress-overlay[data-v-3f306912] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10000;
  animation: fadeIn-3f306912 0.3s ease;
}
.bulgarian-progress-card[data-v-3f306912] {
  background: white;
  border-radius: 16px;
  padding: 32px;
  max-width: 500px;
  width: 90%;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
  animation: scaleIn-3f306912 0.3s ease;
}
.progress-header[data-v-3f306912] {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 24px;
}
.progress-icon[data-v-3f306912] {
  font-size: 32px;
  color: #3b82f6;
}
.progress-header h3[data-v-3f306912] {
  margin: 0;
  font-size: 20px;
  font-weight: 600;
  color: #1e293b;
}
.progress-info[data-v-3f306912] {
  margin-bottom: 20px;
}
.progress-filename[data-v-3f306912] {
  font-size: 14px;
  color: #64748b;
  margin: 0 0 8px 0;
  font-weight: 500;
}
.progress-count[data-v-3f306912] {
  font-size: 16px;
  color: #1e293b;
  margin: 0;
  font-weight: 600;
}
.progress-bar-container[data-v-3f306912] {
  width: 100%;
  height: 12px;
  background: #e2e8f0;
  border-radius: 6px;
  overflow: hidden;
  margin-bottom: 12px;
}
.progress-bar-fill[data-v-3f306912] {
  height: 100%;
  background: linear-gradient(90deg, #3b82f6 0%, #2563eb 100%);
  border-radius: 6px;
  transition: width 0.3s ease;
}
.progress-percentage[data-v-3f306912] {
  text-align: center;
  font-size: 18px;
  font-weight: 600;
  color: #3b82f6;
}

/* Bulgarian Success Modal */
.bulgarian-success-modal[data-v-3f306912] {
  max-width: 500px;
}
.bulgarian-success-modal .modal-header[data-v-3f306912] {
  text-align: center;
  padding-bottom: 24px;
}
.success-icon-wrapper[data-v-3f306912] {
  margin-bottom: 16px;
}
.success-icon[data-v-3f306912] {
  font-size: 64px;
  color: #22c55e;
  animation: successPulse-3f306912 0.6s ease;
}
@keyframes successPulse-3f306912 {
0% {
    transform: scale(0);
    opacity: 0;
}
50% {
    transform: scale(1.1);
}
100% {
    transform: scale(1);
    opacity: 1;
}
}
.bulgarian-success-modal .modal-header h3[data-v-3f306912] {
  margin: 0;
  font-size: 24px;
  font-weight: 600;
  color: #1e293b;
}
.success-summary[data-v-3f306912] {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.summary-row[data-v-3f306912] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 16px;
  background: #f8fafc;
  border-radius: 8px;
}
.summary-label[data-v-3f306912] {
  font-size: 14px;
  color: #64748b;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 8px;
}
.summary-value[data-v-3f306912] {
  font-size: 16px;
  font-weight: 600;
  color: #1e293b;
}
.success-row[data-v-3f306912] {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.success-row .summary-label[data-v-3f306912] {
  color: #16a34a;
}
.success-value[data-v-3f306912] {
  color: #16a34a;
  font-size: 20px;
}
.error-row[data-v-3f306912] {
  background: #fef2f2;
  border: 1px solid #fecaca;
}
.error-row .summary-label[data-v-3f306912] {
  color: #dc2626;
}
.error-value[data-v-3f306912] {
  color: #dc2626;
  font-size: 20px;
}
.btn-confirm-success[data-v-3f306912] {
  background: #22c55e;
  color: white;
  border: none;
  padding: 12px 32px;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
  transition: all 0.2s;
  width: 100%;
  justify-content: center;
}
.btn-confirm-success[data-v-3f306912]:hover {
  background: #16a34a;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(34, 197, 94, 0.3);
}
@keyframes fadeIn-3f306912 {
from {
    opacity: 0;
}
to {
    opacity: 1;
}
}
@keyframes scaleIn-3f306912 {
from {
    opacity: 0;
    transform: scale(0.9);
}
to {
    opacity: 1;
    transform: scale(1);
}
}
@keyframes slideDown-3f306912 {
from {
    opacity: 0;
    transform: translateY(-10px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}

/* Selection Options */
.selection-options[data-v-3f306912] {
  background: white;
  border: 2px solid #e2e8f0;
  border-radius: 12px;
  padding: 20px;
  margin-bottom: 20px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 16px;
}
.selection-options .form-group[data-v-3f306912] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.selection-options .form-group label[data-v-3f306912] {
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
}
.form-select[data-v-3f306912] {
  padding: 12px 16px;
  border: 1px solid var(--border);
  border-radius: 8px;
  font-size: 14px;
  color: var(--text-primary);
  background: white;
  cursor: pointer;
  transition: all 0.2s ease;
}
.form-select[data-v-3f306912]:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px var(--primary-light);
}
.form-select[data-v-3f306912]:hover {
  border-color: var(--primary);
}
@media (max-width: 640px) {
.selection-options[data-v-3f306912] {
    grid-template-columns: 1fr;
}
}

/* Multi-Page Mode */
.multi-page-option[data-v-3f306912] {
  background: white;
  border: 2px solid #e2e8f0;
  border-radius: 12px;
  padding: 16px 20px;
  margin-bottom: 20px;
}
.checkbox-label[data-v-3f306912] {
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  user-select: none;
}
.checkbox-label input[type="checkbox"][data-v-3f306912] {
  width: 16px;
  height: 16px;
  cursor: pointer;
}
.checkbox-text[data-v-3f306912] {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 15px;
  font-weight: 600;
  color: var(--text-primary);
}
.checkbox-text svg[data-v-3f306912] {
  color: var(--primary);
}
.checkbox-description[data-v-3f306912] {
  margin: 8px 0 0 32px;
  font-size: 13px;
  color: var(--text-secondary);
  line-height: 1.5;
}

/* Hard Scan Option */
.hard-scan-option[data-v-3f306912] {
  background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
  border: 2px solid #f59e0b;
  border-radius: 12px;
  padding: 16px 20px;
  margin-bottom: 20px;
}
.hard-scan-option .checkbox-text svg[data-v-3f306912] {
  color: #f59e0b;
}
.hard-scan-option .checkbox-label input[type="checkbox"][data-v-3f306912]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.hard-scan-option .checkbox-label[data-v-3f306912]:has(input:disabled) {
  cursor: not-allowed;
  opacity: 0.7;
}
.upload-zone[data-v-3f306912] {
  background: white;
  border: 2px solid var(--primary);
  border-radius: 16px;
  padding: 60px 40px;
  text-align: center;
  cursor: pointer;
  transition: all 0.3s ease;
  margin-bottom: 20px;
}
.upload-zone.disabled[data-v-3f306912] {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}
.upload-zone[data-v-3f306912]:hover:not(.disabled) {
  border-color: var(--primary-hover);
  background: var(--primary-light);
}
.upload-zone.drag-over[data-v-3f306912]:not(.disabled) {
  border-color: var(--primary-hover);
  background: var(--blue-light);
  transform: scale(1.01);
}
.upload-zone-content[data-v-3f306912] {
  pointer-events: none;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.upload-icon[data-v-3f306912] {
  margin-bottom: 20px;
  display: flex;
  justify-content: center;
}
.upload-text[data-v-3f306912] {
  font-size: 17px;
  color: var(--text-primary);
  margin: 0 0 8px 0;
  font-weight: 500;
}
.upload-subtext[data-v-3f306912] {
  font-size: 14px;
  color: var(--text-secondary);
  margin: 0;
}

/* Limit Reached Message */
.limit-reached-message[data-v-3f306912] {
  background: linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%);
  border: 2px solid #f59e0b;
  border-radius: 16px;
  padding: 48px 40px;
  text-align: center;
  margin-bottom: 20px;
}
.limit-title[data-v-3f306912] {
  font-size: 24px;
  font-weight: 700;
  color: #92400e;
  margin: 0 0 12px 0;
}
.limit-description[data-v-3f306912] {
  font-size: 16px;
  color: #78350f;
  margin: 0 0 20px 0;
  line-height: 1.5;
}
.limit-details[data-v-3f306912] {
  background: white;
  border-radius: 12px;
  padding: 16px 24px;
  margin: 0 auto 28px;
  max-width: 300px;
}
.limit-details p[data-v-3f306912] {
  margin: 0;
  font-size: 15px;
  font-weight: 600;
  color: #92400e;
}
.btn-upgrade[data-v-3f306912] {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 32px;
  background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
  color: white;
  border: none;
  border-radius: 12px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  transition: all 0.2s ease;
  box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3);
}
.btn-upgrade[data-v-3f306912]:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(245, 158, 11, 0.4);
  background: linear-gradient(135deg, #d97706 0%, #b45309 100%);
}
.btn-upgrade[data-v-3f306912]:active {
  transform: translateY(0);
}
.hidden[data-v-3f306912] {
  display: none;
}
.upload-buttons[data-v-3f306912] {
  display: flex;
  gap: 12px;
  justify-content: center;
  margin-bottom: 32px;
}
.btn-camera[data-v-3f306912],
.btn-upload[data-v-3f306912] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 28px;
  height: 45px;
  border: none;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  min-width: 160px;
}
.btn-camera[data-v-3f306912] {
  background: var(--primary);
  color: white;
  box-shadow: 0 2px 6px rgba(14, 165, 233, 0.3);
}
.btn-camera[data-v-3f306912]:hover {
  background: var(--primary-hover);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.4);
}
.btn-upload[data-v-3f306912] {
  background: white;
  color: var(--text-primary);
  border: 1.5px solid var(--border);
}
.btn-upload[data-v-3f306912]:hover {
  background: var(--bg-gray);
  border-color: var(--gray-light);
  transform: translateY(-1px);
}
.file-queue[data-v-3f306912] {
  background: white;
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.queue-header[data-v-3f306912] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--border);
}
.queue-header h3[data-v-3f306912] {
  margin: 0;
  font-size: 18px;
  color: var(--text-primary);
}
.btn-clear[data-v-3f306912] {
  background: none;
  border: none;
  color: var(--text-secondary);
  font-size: 14px;
  cursor: pointer;
  padding: 6px 12px;
  border-radius: 6px;
  transition: all 0.2s ease;
}
.btn-clear[data-v-3f306912]:hover {
  background: var(--light-gray);
  color: var(--slate);
}
.file-list[data-v-3f306912] {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.file-item[data-v-3f306912] {
  display: flex;
  gap: 16px;
  padding: 16px;
  background: var(--bg-gray);
  border-radius: 12px;
  border: 2px solid transparent;
  transition: all 0.2s ease;
}
.file-item.uploading[data-v-3f306912] {
  border-color: var(--primary);
  background: var(--primary-light);
}
.file-item.processing[data-v-3f306912] {
  border-color: var(--warning);
  background: var(--yellow-lightest);
}
.file-item.completed[data-v-3f306912] {
  border-color: var(--success);
  background: var(--green-lightest);
}
.file-item.failed[data-v-3f306912] {
  border-color: var(--danger);
  background: var(--red-lightest);
}
.file-preview[data-v-3f306912] {
  flex-shrink: 0;
  width: 80px;
  height: 80px;
  border-radius: 10px;
  overflow: hidden;
  background: var(--bg-gray);
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid var(--border);
}
.file-preview img[data-v-3f306912] {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.file-icon[data-v-3f306912] {
  color: var(--text-light);
}
.file-info[data-v-3f306912] {
  flex: 1;
  min-width: 0;
}
.file-name[data-v-3f306912] {
  font-weight: 500;
  color: var(--text-primary);
  margin-bottom: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.file-size[data-v-3f306912] {
  font-size: 13px;
  color: var(--text-secondary);
  margin-bottom: 8px;
}
.progress-bar[data-v-3f306912] {
  height: 6px;
  background: var(--border);
  border-radius: 3px;
  overflow: hidden;
  margin-top: 8px;
  position: relative;
}
.progress-fill[data-v-3f306912] {
  height: 100%;
  background: linear-gradient(90deg, var(--primary), var(--secondary));
  border-radius: 3px;
  transition: width 0.3s ease;
  position: relative;
  overflow: hidden;
}
.progress-fill.processing[data-v-3f306912] {
  background: linear-gradient(90deg, var(--warning), var(--yellow));
}
.scanning-line[data-v-3f306912] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg,
    transparent 0%,
    transparent 40%,
    rgba(255, 255, 255, 0.9) 50%,
    transparent 60%,
    transparent 100%
  );
  animation: scan-3f306912 2s ease-in-out infinite;
}
@keyframes scan-3f306912 {
0% {
    transform: translateX(-100%);
}
100% {
    transform: translateX(100%);
}
}
.upload-state[data-v-3f306912] {
  margin-top: 8px;
}
.processing-state[data-v-3f306912] {
  margin-top: 8px;
}
.processing-text[data-v-3f306912] {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--warning);
  font-size: 13px;
  font-weight: 500;
  margin-bottom: 8px;
}
.loading-spinner[data-v-3f306912] {
  display: inline-block;
  width: 12px;
  height: 12px;
  border: 2px solid var(--warning-light);
  border-top-color: var(--warning);
  border-radius: 50%;
  animation: spin-3f306912 1s linear infinite;
}
@keyframes spin-3f306912 {
to { transform: rotate(360deg);
}
}
.status-success[data-v-3f306912] {
  color: var(--success);
  font-size: 13px;
  font-weight: 500;
  margin-top: 8px;
}
.status-error[data-v-3f306912] {
  color: var(--danger);
  font-size: 13px;
  font-weight: 500;
  margin-top: 8px;
}
.file-actions[data-v-3f306912] {
  display: flex;
  gap: 8px;
  align-items: center;
}
.btn-retry[data-v-3f306912],
.btn-view[data-v-3f306912] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  min-width: 32px;
  padding: 0;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.btn-retry svg[data-v-3f306912],
.btn-view svg[data-v-3f306912] {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  display: block;
}
.btn-retry[data-v-3f306912] {
  background: #0ea5e9;
  color: white;
}
.btn-retry[data-v-3f306912]:hover {
  background: #0284c7;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.btn-view[data-v-3f306912] {
  background: #0ea5e9;
  color: white;
}
.btn-view[data-v-3f306912]:hover {
  background: #0284c7;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}

/* Success Card */
.success-card[data-v-3f306912] {
  margin-top: 24px;
  background: white;
  border: 3px solid var(--success);
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 4px 12px rgba(16, 185, 129, 0.15);
}

/* Consolidated Success Card */
.success-card-consolidated[data-v-3f306912] {
  position: relative;
  background: white;
  border: none;
  border-radius: 12px;
  padding: 20px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  margin-bottom: 16px;
}
.success-card-consolidated .btn-icon[data-v-3f306912] {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 10;
}
.success-content-wrapper[data-v-3f306912] {
  display: flex;
  gap: 16px;
  align-items: flex-start;
}
.original-thumbnail[data-v-3f306912] {
  flex-shrink: 0;
  width: 120px;
  height: 150px;
  border-radius: 8px;
  overflow: hidden;
  background: #f1f5f9;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #e2e8f0;
  transition: all 0.2s ease;
}
.original-thumbnail[data-v-3f306912]:hover {
  border-color: #0ea5e9;
  transform: scale(1.05);
}
.thumbnail-image[data-v-3f306912] {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.thumbnail-placeholder[data-v-3f306912] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: var(--text-light);
}
.success-info[data-v-3f306912] {
  flex: 1;
  min-width: 0;
}
.success-header[data-v-3f306912] {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
}
.success-icon[data-v-3f306912] {
  flex-shrink: 0;
  padding: 4px 8px;
  background: #10b981;
  border-radius: 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.success-title[data-v-3f306912] {
  font-size: 16px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}
.invoice-details-preview[data-v-3f306912] {
  background: #f8fafc;
  border-radius: 8px;
  padding: 12px;
  margin-bottom: 14px;
  display: grid;
  gap: 8px;
}
.detail-item[data-v-3f306912] {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 4px 0;
  border-bottom: 1px solid #e2e8f0;
}
.detail-item[data-v-3f306912]:last-child {
  border-bottom: none;
}
.detail-label[data-v-3f306912] {
  font-size: 13px;
  color: var(--text-secondary);
  font-weight: 500;
}
.detail-value[data-v-3f306912] {
  font-size: 13px;
  color: var(--text-primary);
  font-weight: 600;
  text-align: right;
  max-width: 70%;
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
}
.detail-value.amount[data-v-3f306912] {
  color: var(--primary);
  font-size: 14px;
}
.success-actions[data-v-3f306912] {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.btn-show-original[data-v-3f306912],
.btn-rescan[data-v-3f306912] {
  flex: 1;
  min-width: 90px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 6px 10px;
  background: var(--bg-gray);
  border: 1px solid var(--border);
  border-radius: 6px;
  font-size: 11px;
  font-weight: 600;
  color: var(--text-primary);
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-show-original[data-v-3f306912]:hover {
  background: var(--primary-light);
  border-color: var(--primary);
  color: var(--primary);
}
.btn-rescan[data-v-3f306912]:hover {
  background: #fffbeb;
  border-color: #f59e0b;
  color: #f59e0b;
}
.btn-view-invoice[data-v-3f306912] {
  flex: 1;
  min-width: 90px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 6px 10px;
  background: var(--primary);
  border: 1px solid var(--primary);
  border-radius: 6px;
  font-size: 11px;
  font-weight: 600;
  color: white;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-view-invoice[data-v-3f306912]:hover {
  background: var(--primary-hover);
  border-color: var(--primary-hover);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.btn-scan-another[data-v-3f306912] {
  flex: 1;
  min-width: 140px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 20px;
  background: white;
  border: 2px solid var(--border);
  border-radius: 10px;
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-scan-another[data-v-3f306912]:hover {
  border-color: var(--primary);
  color: var(--primary);
}
.success-actions[data-v-3f306912] {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.btn-view-invoice[data-v-3f306912],
.btn-scan-another[data-v-3f306912] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 20px;
  border: none;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-view-invoice[data-v-3f306912] {
  background: var(--primary);
  color: white;
}
.btn-view-invoice[data-v-3f306912]:hover {
  background: var(--primary-hover);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
  transform: translateY(-1px);
}
.btn-scan-another[data-v-3f306912] {
  background: white;
  color: var(--primary);
  border: 2px solid var(--primary);
}
.btn-scan-another[data-v-3f306912]:hover {
  background: var(--primary-light);
  transform: translateY(-1px);
}
@media (max-width: 640px) {
.upload-zone[data-v-3f306912] {
    padding: 40px 20px;
}
.upload-buttons[data-v-3f306912] {
    flex-direction: column;
}
.file-item[data-v-3f306912] {
    flex-direction: column;
}
.file-actions[data-v-3f306912] {
    justify-content: flex-end;
}
.success-card[data-v-3f306912] {
    padding: 24px 20px;
}
.success-actions[data-v-3f306912] {
    grid-template-columns: 1fr;
}

  /* Mobile success card improvements */
.success-card-consolidated[data-v-3f306912] {
    padding: 12px;
}
.success-card-consolidated .btn-icon[data-v-3f306912] {
    top: 8px;
    right: 8px;
}
.success-content-wrapper[data-v-3f306912] {
    flex-direction: column;
    gap: 12px;
}
.original-thumbnail[data-v-3f306912] {
    width: 60px;
    height: 75px;
}
.success-header[data-v-3f306912] {
    flex-direction: row;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}
.success-icon[data-v-3f306912] {
    padding: 3px 6px;
    font-size: 10px;
}
.success-title[data-v-3f306912] {
    font-size: 14px;
}
.invoice-details-preview[data-v-3f306912] {
    padding: 10px;
    margin-bottom: 12px;
    gap: 6px;
}
.detail-item[data-v-3f306912] {
    padding: 4px 0;
}
.detail-label[data-v-3f306912] {
    font-size: 12px;
}
.detail-value[data-v-3f306912] {
    font-size: 12px;
    max-width: 100%;
}
.detail-value.amount[data-v-3f306912] {
    font-size: 13px;
}
.success-actions[data-v-3f306912] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.btn-show-original[data-v-3f306912],
  .btn-rescan[data-v-3f306912],
  .btn-view-invoice[data-v-3f306912],
  .btn-scan-another[data-v-3f306912] {
    width: 100%;
    min-width: auto;
    padding: 8px 12px;
    font-size: 12px;
}
}

/* Multi-Page PDF Modal */
.modal-overlay[data-v-3f306912] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  backdrop-filter: blur(8px);
  animation: fadeIn-3f306912 0.3s ease;
}
.modal-content[data-v-3f306912] {
  background: white;
  border-radius: 12px;
  padding: 0;
  max-width: 550px;
  width: 90%;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
  animation: slideUp-3f306912 0.3s ease;
}
@keyframes slideUp-3f306912 {
from {
    opacity: 0;
    transform: translateY(20px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}
.modal-header[data-v-3f306912] {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 24px 24px 20px 24px;
  border-bottom: 1px solid #e2e8f0;
  position: relative;
}
.header-icon[data-v-3f306912] {
  background: #0ea5e9;
  color: white;
  width: 48px;
  height: 48px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  flex-shrink: 0;
}
.header-content[data-v-3f306912] {
  flex: 1;
}
.header-content h3[data-v-3f306912] {
  margin: 0 0 4px 0;
  font-size: 18px;
  font-weight: 600;
  color: #0f172a;
}
.modal-subtitle[data-v-3f306912] {
  margin: 0;
  font-size: 14px;
  color: #64748b;
}
.modal-body[data-v-3f306912] {
  padding: 24px;
}
.modal-description[data-v-3f306912] {
  margin: 0 0 24px 0;
  color: #64748b;
  font-size: 15px;
  text-align: center;
  line-height: 1.6;
  font-weight: 500;
}
.modal-body strong[data-v-3f306912] {
  color: var(--primary);
  font-weight: 700;
}
.modal-options[data-v-3f306912] {
  display: grid;
  gap: 12px;
}
.modal-option-btn[data-v-3f306912] {
  width: 100%;
  padding: 20px;
  border: 2px solid #e2e8f0;
  border-radius: 8px;
  background: white;
  cursor: pointer;
  text-align: center;
  transition: all 0.2s ease;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.modal-option-btn[data-v-3f306912]:hover {
  border-color: #0ea5e9;
  background: #f8fafc;
  transform: translateY(-1px);
}
.modal-option-btn[data-v-3f306912]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}
.modal-option-btn h4[data-v-3f306912] {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  color: #0f172a;
  transition: color 0.2s ease;
}
.modal-option-btn p[data-v-3f306912] {
  margin: 0;
  font-size: 14px;
  color: #64748b;
  text-align: center;
  line-height: 1.5;
}
.option-icon[data-v-3f306912] {
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  transition: all 0.2s ease;
  color: #64748b;
  font-size: 24px;
}
.option-icon svg[data-v-3f306912] {
  max-width: 30px;
  max-height: 30px;
}
.modal-option-btn:hover .option-icon[data-v-3f306912] {
  color: #0ea5e9;
}
.modal-option-btn:hover h4[data-v-3f306912] {
  color: #0ea5e9;
}

/* Mixed Mode Modal */
.mixed-mode-modal[data-v-3f306912] {
  max-width: 90%;
  width: 1200px;
  max-height: 90vh;
  display: flex;
  flex-direction: column;
}
.mixed-mode-body[data-v-3f306912] {
  max-height: calc(90vh - 180px);
  overflow-y: auto;
}
.pages-classification-grid[data-v-3f306912] {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 16px;
  margin-bottom: 24px;
}
.page-classification-item[data-v-3f306912] {
  border: 2px solid #e2e8f0;
  border-radius: 12px;
  overflow: hidden;
  background: white;
  transition: all 0.2s ease;
}
.page-classification-item.page-excluded[data-v-3f306912] {
  opacity: 0.5;
  border-color: #cbd5e1;
  background: #f8fafc;
}
.page-classification-item.page-excluded .page-preview-img[data-v-3f306912] {
  filter: grayscale(100%);
}
.page-classification-item[data-v-3f306912]:hover {
  border-color: var(--primary);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.15);
}
.page-classification-item.page-excluded[data-v-3f306912]:hover {
  border-color: #94a3b8;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.page-preview-wrapper[data-v-3f306912] {
  position: relative;
  aspect-ratio: 1 / 1.4;
  background: var(--bg-gray);
  overflow: hidden;
}
.page-checkbox-wrapper[data-v-3f306912] {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 10;
}
.page-checkbox-label[data-v-3f306912] {
  display: flex;
  align-items: center;
  cursor: pointer;
  position: relative;
}
.page-checkbox[data-v-3f306912] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.checkbox-checkmark[data-v-3f306912] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  background: rgba(0, 0, 0, 0.7);
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-radius: 6px;
  transition: all 0.2s ease;
}
.checkbox-checkmark[data-v-3f306912]::after {
  content: '';
  display: none;
  width: 8px;
  height: 14px;
  border: solid white;
  border-width: 0 2.5px 2.5px 0;
  transform: rotate(45deg);
}
.page-checkbox:checked ~ .checkbox-checkmark[data-v-3f306912] {
  background: rgba(14, 165, 233, 0.9);
  border-color: rgba(14, 165, 233, 1);
}
.page-checkbox:checked ~ .checkbox-checkmark[data-v-3f306912]::after {
  display: block;
}
.page-checkbox-label:hover .checkbox-checkmark[data-v-3f306912] {
  background: rgba(14, 165, 233, 0.8);
  border-color: rgba(14, 165, 233, 1);
  transform: scale(1.1);
}
.page-preview-img[data-v-3f306912] {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 0.3s ease;
}
.page-number-badge[data-v-3f306912] {
  position: absolute;
  bottom: 8px;
  left: 8px;
  background: rgba(0, 0, 0, 0.7);
  color: white;
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
}
.page-rotation-controls[data-v-3f306912] {
  position: absolute;
  top: 8px;
  right: 8px;
  display: flex;
  gap: 4px;
  opacity: 0;
  transition: opacity 0.2s ease;
}
.page-preview-wrapper:hover .page-rotation-controls[data-v-3f306912] {
  opacity: 1;
}
.btn-rotate[data-v-3f306912] {
  width: 32px;
  height: 32px;
  border: none;
  border-radius: 6px;
  background: rgba(0, 0, 0, 0.7);
  color: white;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
  font-size: 14px;
}
.btn-rotate[data-v-3f306912]:hover {
  background: rgba(14, 165, 233, 0.9);
  transform: scale(1.1);
}
.btn-rotate[data-v-3f306912]:active {
  transform: scale(0.95);
}
.page-classification-controls[data-v-3f306912] {
  padding: 12px;
  background: white;
}
.classification-label[data-v-3f306912] {
  display: block;
  font-size: 12px;
  font-weight: 600;
  color: var(--text-secondary);
  margin-bottom: 6px;
  text-transform: uppercase;
}
.invoice-number-select[data-v-3f306912] {
  width: 100%;
  padding: 10px 12px;
  border: 2px solid #e2e8f0;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
  background: white;
  cursor: pointer;
  transition: all 0.2s ease;
}
.invoice-number-select[data-v-3f306912]:hover {
  border-color: var(--primary);
}
.invoice-number-select[data-v-3f306912]:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.classification-summary[data-v-3f306912] {
  background: var(--bg-gray);
  border-radius: 12px;
  padding: 16px;
  margin-top: 24px;
}
.classification-summary h4[data-v-3f306912] {
  margin: 0 0 12px 0;
  font-size: 16px;
  font-weight: 600;
  color: var(--text-primary);
}
.summary-items[data-v-3f306912] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.summary-item[data-v-3f306912] {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: white;
  border-radius: 8px;
  font-size: 14px;
  color: var(--text-secondary);
}
.summary-item strong[data-v-3f306912] {
  color: var(--primary);
  margin-right: 4px;
}
.modal-footer[data-v-3f306912] {
  padding: 16px 24px;
  border-top: 1px solid #e2e8f0;
  display: flex;
  gap: 12px;
  justify-content: flex-end;
  background: white;
}
.btn-cancel-mixed[data-v-3f306912],
.btn-confirm-mixed[data-v-3f306912] {
  padding: 12px 24px;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  gap: 8px;
}
.btn-cancel-mixed[data-v-3f306912] {
  background: white;
  border: 2px solid var(--border);
  color: var(--text-primary);
}
.btn-cancel-mixed[data-v-3f306912]:hover {
  border-color: var(--danger);
  color: var(--danger);
}
.btn-confirm-mixed[data-v-3f306912] {
  background: var(--primary);
  border: 2px solid var(--primary);
  color: white;
}
.btn-confirm-mixed[data-v-3f306912]:hover:not(:disabled) {
  background: var(--primary-hover);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.btn-confirm-mixed[data-v-3f306912]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.loading-spinner-small[data-v-3f306912] {
  width: 16px;
  height: 16px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-top-color: white;
  border-radius: 50%;
  animation: spin-3f306912 0.8s linear infinite;
}
@media (max-width: 640px) {
.modal-content[data-v-3f306912] {
    width: 95%;
    margin: 20px;
}
.modal-header[data-v-3f306912] {
    padding: 20px;
}
.modal-body[data-v-3f306912] {
    padding: 20px;
}
.modal-option-btn[data-v-3f306912] {
    padding: 16px;
}
.mixed-mode-modal[data-v-3f306912] {
    max-width: 100%;
    width: 100%;
    margin: 0;
    max-height: 100vh;
    border-radius: 0;
}
.pages-classification-grid[data-v-3f306912] {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}
.modal-footer[data-v-3f306912] {
    flex-direction: column;
}
.btn-cancel-mixed[data-v-3f306912],
  .btn-confirm-mixed[data-v-3f306912] {
    width: 100%;
    justify-content: center;
}
}

.vendor-selector[data-v-54bcc803] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.selector-label[data-v-54bcc803] {
  font-size: 13px;
  font-weight: 600;
  color: var(--gray-dark);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.selector-wrapper[data-v-54bcc803] {
  position: relative;
}
.selector-input[data-v-54bcc803] {
  position: relative;
  display: flex;
  align-items: center;
  padding: 10px 40px 10px 14px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: white;
  cursor: pointer;
  transition: all 0.2s ease;
  min-height: 42px;
}
.selector-input[data-v-54bcc803]:hover:not(.disabled) {
  border-color: var(--gray-light);
}
.selector-input.open[data-v-54bcc803] {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.vendor-selector.active-filter .selector-input[data-v-54bcc803]:not(.open) {
  border: 2px solid #0ea5e9;
  background: rgba(14, 165, 233, 0.05);
}
.selector-input.disabled[data-v-54bcc803] {
  background: var(--bg-gray);
  cursor: not-allowed;
  opacity: 0.6;
}
.search-input[data-v-54bcc803] {
  flex: 1;
  border: none;
  outline: none;
  font-size: 14px;
  color: var(--text-primary);
  background: transparent;
  padding: 0;
}
.search-input[data-v-54bcc803]::placeholder {
  color: var(--text-light);
}
.selected-value[data-v-54bcc803] {
  flex: 1;
  font-size: 14px;
  color: var(--text-primary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dropdown-icon[data-v-54bcc803] {
  position: absolute;
  right: 14px;
  flex-shrink: 0;
  color: var(--text-secondary);
  transition: transform 0.2s ease;
  font-size: 12px;
  pointer-events: none;
}
.dropdown-icon.rotate[data-v-54bcc803] {
  transform: rotate(180deg);
}
.dropdown-menu[data-v-54bcc803] {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  right: 0;
  max-height: 300px;
  background: white;
  border: 1px solid var(--border);
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  overflow: hidden;
}
.dropdown-list[data-v-54bcc803] {
  max-height: 300px;
  overflow-y: auto;
}
.dropdown-item[data-v-54bcc803] {
  padding: 10px 14px;
  cursor: pointer;
  transition: background 0.15s ease;
  border-bottom: 1px solid var(--gray-lighter);
}
.dropdown-item[data-v-54bcc803]:last-child {
  border-bottom: none;
}
.dropdown-item[data-v-54bcc803]:hover,
.dropdown-item.highlighted[data-v-54bcc803] {
  background: var(--primary-light);
}
.dropdown-item.selected[data-v-54bcc803] {
  background: var(--primary-light);
  font-weight: 600;
}
.dropdown-item.clear-option[data-v-54bcc803] {
  font-style: italic;
  color: var(--text-secondary);
  border-bottom: 2px solid var(--border);
}
.dropdown-item.clear-option.selected[data-v-54bcc803] {
  font-style: normal;
  font-weight: 600;
  color: var(--text-primary);
}
.dropdown-item.loading[data-v-54bcc803],
.dropdown-item.empty[data-v-54bcc803] {
  display: flex;
  align-items: center;
  gap: 8px;
  justify-content: center;
  color: var(--text-secondary);
  cursor: default;
  padding: 16px;
}
.dropdown-item.loading[data-v-54bcc803]:hover,
.dropdown-item.empty[data-v-54bcc803]:hover {
  background: white;
}
.vendor-name[data-v-54bcc803] {
  font-size: 14px;
  color: var(--text-primary);
  font-weight: 500;
}
.vendor-vat[data-v-54bcc803] {
  font-size: 12px;
  color: var(--text-secondary);
  margin-top: 2px;
}
.spinner-small[data-v-54bcc803] {
  width: 14px;
  height: 14px;
  border: 2px solid var(--border);
  border-top-color: var(--primary);
  border-radius: 50%;
  animation: spin-54bcc803 0.6s linear infinite;
}
@keyframes spin-54bcc803 {
to { transform: rotate(360deg);
}
}
.selector-error[data-v-54bcc803] {
  font-size: 12px;
  color: var(--danger);
  font-style: italic;
}

.custom-select[data-v-8c2f63ac] {
  position: relative;
}
.select-input[data-v-8c2f63ac] {
  position: relative;
  display: flex;
  align-items: center;
  padding: 10px 40px 10px 14px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: white;
  cursor: pointer;
  transition: all 0.2s ease;
  min-height: 42px;
}
.select-input[data-v-8c2f63ac]:hover {
  border-color: var(--gray-light);
}
.select-input.open[data-v-8c2f63ac] {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.selected-value[data-v-8c2f63ac] {
  flex: 1;
  font-size: 14px;
  color: var(--text-primary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dropdown-icon[data-v-8c2f63ac] {
  position: absolute;
  right: 14px;
  flex-shrink: 0;
  color: var(--text-secondary);
  transition: transform 0.2s ease;
  font-size: 12px;
  pointer-events: none;
}
.dropdown-icon.rotate[data-v-8c2f63ac] {
  transform: rotate(180deg);
}
.dropdown-menu[data-v-8c2f63ac] {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  right: 0;
  max-height: 250px;
  background: white;
  border: 1px solid var(--border);
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  overflow-y: auto;
}
.dropdown-item[data-v-8c2f63ac] {
  padding: 10px 14px;
  cursor: pointer;
  transition: background 0.15s ease;
  border-bottom: 1px solid var(--gray-lighter);
}
.dropdown-item[data-v-8c2f63ac]:last-child {
  border-bottom: none;
}
.dropdown-item[data-v-8c2f63ac]:hover {
  background: var(--primary-light);
}
.dropdown-item.selected[data-v-8c2f63ac] {
  background: var(--primary-light);
  font-weight: 600;
}
.option-label[data-v-8c2f63ac] {
  font-size: 14px;
  color: var(--text-primary);
}

.scans-table-wrapper[data-v-0b710b5a] {
    width: 100%;
}

/* Loading State */
.loading-state[data-v-0b710b5a] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 100px 24px;
    color: var(--text-secondary);
}
.spinner-large[data-v-0b710b5a] {
    width: 56px;
    height: 56px;
    border: 5px solid var(--border-color);
    border-top-color: var(--primary);
    border-radius: 50%;
    animation: spin-0b710b5a 0.8s linear infinite;
    margin-bottom: 20px;
    box-shadow: 0 4px 12px rgba(14, 165, 233, 0.2);
}
@keyframes spin-0b710b5a {
to { transform: rotate(360deg);
}
}

/* Empty State */
.empty-state[data-v-0b710b5a] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 100px 24px;
    text-align: center;
}
.empty-title[data-v-0b710b5a] {
    font-size: 26px;
    font-weight: 700;
    color: var(--text-primary);
    margin: 28px 0 12px 0;
    letter-spacing: -0.02em;
}
.empty-text[data-v-0b710b5a] {
    font-size: 16px;
    color: var(--text-secondary);
    margin: 0 0 32px 0;
    line-height: 1.6;
}
.btn-start-scanning[data-v-0b710b5a] {
    padding: 14px 36px;
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
    color: white;
    border: none;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 6px 20px rgba(14, 165, 233, 0.35);
    letter-spacing: -0.01em;
}
.btn-start-scanning[data-v-0b710b5a]:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 30px rgba(14, 165, 233, 0.45);
}

/* Scans List */
.scans-list[data-v-0b710b5a] {
    display: flex;
    flex-direction: column;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    overflow: hidden;
    background: white;
}
.date-separator[data-v-0b710b5a] {
    padding: 12px 24px;
    border-bottom: 1px solid #e2e8f0;
    position: sticky;
    top: 0;
    z-index: 10;
    background: #f8fafc;
}
.date-separator[data-v-0b710b5a]:first-child {
    border-top: none;
}

/* Table Headers (Desktop Only) */
.table-headers[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 12px 18px;
    background: #f8fafc;
    border-bottom: 2px solid #e2e8f0;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #64748b;
}
.header-checkbox[data-v-0b710b5a] {
    width: 16px;
    flex-shrink: 0;
}
.header-thumbnail[data-v-0b710b5a] {
    width: 60px;
    flex-shrink: 0;
}
.header-info[data-v-0b710b5a] {
    flex: 1;
    min-width: 200px;
}
.header-amount[data-v-0b710b5a] {
    width: 140px;
    flex-shrink: 0;
}
.header-status[data-v-0b710b5a] {
    width: 100px;
    flex-shrink: 0;
    text-align: center;
}
.header-actions[data-v-0b710b5a] {
    width: 160px;
    flex-shrink: 0;
    text-align: right;
}
.sortable-header[data-v-0b710b5a] {
    cursor: pointer;
    user-select: none;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: color 0.15s ease;
}
.header-status.sortable-header[data-v-0b710b5a] {
    justify-content: center;
}
.sortable-header[data-v-0b710b5a]:hover {
    color: #334155;
}
.sortable-header .sort-icon[data-v-0b710b5a] {
    font-size: 11px;
    opacity: 0.4;
    transition: opacity 0.15s ease;
}
.sortable-header:hover .sort-icon[data-v-0b710b5a],
.sortable-header.sort-active .sort-icon[data-v-0b710b5a] {
    opacity: 1;
}
.sortable-header.sort-active[data-v-0b710b5a] {
    color: var(--primary-color, #3b82f6);
}
.date-header[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    gap: 8px;
}
.date-checkbox[data-v-0b710b5a] {
    width: 16px;
    height: 16px;
    cursor: pointer;
}
.date-label[data-v-0b710b5a] {
    font-size: 13px;
    color: var(--text-secondary);
    cursor: pointer;
}
.scan-row[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 18px;
    background: white;
    border-bottom: 1px solid #e2e8f0;
    transition: all 0.2s ease;
    cursor: pointer;
}
.scan-row[data-v-0b710b5a]:hover {
    background: #f8fafc;
    border-left: 3px solid #0ea5e9;
    padding-left: 15px;
}
.scan-row.selected[data-v-0b710b5a] {
    background: #eff6ff;
    border-left: 3px solid #0ea5e9;
    padding-left: 15px;
}
.scan-row.is-checked[data-v-0b710b5a] {
    background: linear-gradient(90deg, #d1fae5 0%, #f0fdf4 30%, #ffffff 100%);
}
.scan-row.is-checked[data-v-0b710b5a]:hover {
    background: linear-gradient(90deg, #d1fae5 0%, #ecfdf5 30%, #f8fafc 100%);
}
.scan-row.is-checked.selected[data-v-0b710b5a] {
    background: linear-gradient(90deg, #a7f3d0 0%, #d1fae5 30%, #f0fdf4 100%);
    box-shadow: -3px 0 0 0 #10b981;
}
.scan-row.has-warning[data-v-0b710b5a] {
    background: linear-gradient(90deg, #ffeaa7 0%, #fff3cd 30%, #ffffff 100%);
    border-left: 3px solid #ffc107;
}
.scan-row.has-warning[data-v-0b710b5a]:hover {
    background: linear-gradient(90deg, #ffde7d 0%, #ffeaa7 30%, #fffbf0 100%);
}
.scan-row.has-warning.selected[data-v-0b710b5a] {
    background: linear-gradient(90deg, #ffde7d 0%, #ffeaa7 30%, #fffbf0 100%);
    box-shadow: -3px 0 0 0 #ffc107;
}
.scan-row.has-warning.is-checked[data-v-0b710b5a] {
    background: linear-gradient(90deg, #d1fae5 0%, #f5fde9 15%, #fff3cd 30%, #ffffff 100%);
}
.scan-row.has-warning.is-checked.selected[data-v-0b710b5a] {
    background: linear-gradient(90deg, #bbf7d0 0%, #ecf9d5 15%, #ffeaa7 30%, #fffbf0 100%);
    box-shadow: -3px 0 0 0 #10b981, -6px 0 0 0 #ffc107;
}
.scan-row[data-v-0b710b5a]:last-child {
    border-bottom: none;
}

/* Archived Row Styles */
.scan-row.status-archived[data-v-0b710b5a] {
    opacity: 0.7;
    background: #f8fafc;
}
.scan-row.status-archived[data-v-0b710b5a]:hover {
    opacity: 0.85;
    background: #f1f5f9;
}
.scan-row.status-archived .invoice-number[data-v-0b710b5a],
.scan-row.status-archived .company-text[data-v-0b710b5a] {
    color: #64748b;
}
.scan-row.status-archived .amount-value[data-v-0b710b5a] {
    color: #94a3b8;
}

/* Upload Row Styles */
.upload-row[data-v-0b710b5a] {
    background: #fefce8;
    cursor: default;
}
.upload-row[data-v-0b710b5a]:hover {
    background: #fef9c3;
}
.upload-row.status-uploading[data-v-0b710b5a] {
    background: #eff6ff;
}
.upload-row.status-processing[data-v-0b710b5a] {
    background: #fef3c7;
}
.upload-row.status-completed[data-v-0b710b5a] {
    background: #dcfce7;
}
.upload-row.status-failed[data-v-0b710b5a] {
    background: #fee2e2;
}
.checkbox-placeholder[data-v-0b710b5a] {
    width: 16px;
    height: 16px;
}
.upload-progress[data-v-0b710b5a] {
    font-size: 12px;
    font-weight: 600;
    color: var(--primary);
}
.spinner-tiny[data-v-0b710b5a] {
    width: 14px;
    height: 14px;
    border: 2px solid var(--border);
    border-top-color: var(--primary);
    border-radius: 50%;
    animation: spin-0b710b5a 0.6s linear infinite;
}
.upload-error[data-v-0b710b5a] {
    font-size: 12px;
    color: #dc2626;
    margin-top: 4px;
}

/* Checkbox */
.scan-checkbox[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.checkbox-input[data-v-0b710b5a] {
    width: 16px;
    height: 16px;
    cursor: pointer;
    border-radius: 6px;
    transition: all 0.2s ease;
}
.checkbox-input[data-v-0b710b5a]:hover {
    transform: scale(1.15);
}

/* Invalid VAT Row Styling */
.scan-row.has-invalid-vat[data-v-0b710b5a] {
    background: linear-gradient(90deg, #fcc 0%, #fee 3%, #ffffff 100%) !important;
    border-left: 4px solid #ef4444 !important;
}
.scan-row.has-invalid-vat[data-v-0b710b5a]:hover {
    background: linear-gradient(90deg, #fbb 0%, #fcc 3%, #fff5f5 100%) !important;
    border-left-color: #dc2626 !important;
    box-shadow: -4px 0 0 0 #dc2626 !important;
    transform: translateX(2px);
}
.scan-row.has-invalid-vat.selected[data-v-0b710b5a] {
    background: linear-gradient(90deg, #fbb 0%, #fcc 30%, #fff5f5 100%) !important;
    box-shadow: -4px 0 0 0 #dc2626 !important;
}

/* Company Validation Warning Row Styling - Purple/Blue */
.scan-row.has-company-warning[data-v-0b710b5a] {
    background: linear-gradient(90deg, #fee2e2 0%, #fef2f2 3%, #ffffff 100%) !important;
    border-left: 4px solid #dc2626 !important;
}
.scan-row.has-company-warning[data-v-0b710b5a]:hover {
    background: linear-gradient(90deg, #fecaca 0%, #fee2e2 3%, #fef5f5 100%) !important;
    border-left-color: #b91c1c !important;
    box-shadow: -4px 0 0 0 #b91c1c !important;
    transform: translateX(2px);
}
.scan-row.has-company-warning.selected[data-v-0b710b5a] {
    background: linear-gradient(90deg, #fecaca 0%, #fee2e2 30%, #fef5f5 100%) !important;
    box-shadow: -4px 0 0 0 #b91c1c !important;
}

/* Total Mismatch Row Styling - Matches warning banner yellow (#fff3cd) */
.scan-row.has-total-mismatch[data-v-0b710b5a] {
    background: linear-gradient(90deg, #fff3cd 0%, #fff3cd 3%, #ffffff 100%) !important;
    border-left: 4px solid #ffc107 !important;
}
.scan-row.has-total-mismatch[data-v-0b710b5a]:hover {
    background: linear-gradient(90deg, #ffe69c 0%, #fff3cd 3%, #fffbf0 100%) !important;
    border-left-color: #f59e0b !important;
    box-shadow: -4px 0 0 0 #f59e0b !important;
    transform: translateX(2px);
}
.scan-row.has-total-mismatch.selected[data-v-0b710b5a] {
    background: linear-gradient(90deg, #ffe69c 0%, #fff3cd 30%, #fffbf0 100%) !important;
    box-shadow: -4px 0 0 0 #f59e0b !important;
}

/* Status Badge */
.scan-status[data-v-0b710b5a] {
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    flex-shrink: 0;
}
.status-completed[data-v-0b710b5a] {
    background: #10b981;
    color: #ffffff;
}
.status-processing[data-v-0b710b5a] {
    background: #f59e0b;
    color: #ffffff;
}
.status-failed[data-v-0b710b5a] {
    background: #ef4444;
    color: #ffffff;
}
.status-pending[data-v-0b710b5a] {
    background: #94a3b8;
    color: #ffffff;
}
.status-archived[data-v-0b710b5a] {
    background: #64748b;
    color: #ffffff;
}

/* Time Badge */
.scan-time[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: var(--text-secondary);
}
.scan-time svg[data-v-0b710b5a] {
    flex-shrink: 0;
    opacity: 0.7;
}

/* Thumbnail */
.scan-thumbnail[data-v-0b710b5a] {
    width: 50px;
    height: 50px;
    border-radius: 8px;
    overflow: hidden;
    background: #f1f5f9;
    border: 2px solid #e2e8f0;
    flex-shrink: 0;
    cursor: pointer;
    transition: all 0.2s ease;
}
.scan-thumbnail[data-v-0b710b5a]:hover {
    border-color: #0ea5e9;
    transform: scale(1.05);
}
.thumbnail-img[data-v-0b710b5a] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.thumbnail-placeholder[data-v-0b710b5a] {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-secondary);
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
}
.thumbnail-placeholder svg[data-v-0b710b5a] {
    color: white;
    opacity: 0.9;
}

/* Invoice Info */
.scan-info[data-v-0b710b5a] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 200px;
    flex: 1;
    cursor: pointer;
}
.invoice-header[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 4px;
}
.invoice-type[data-v-0b710b5a] {
    font-size: 11px;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    background: #f1f5f9;
    padding: 2px 6px;
    border-radius: 4px;
}
.invoice-number[data-v-0b710b5a] {
    font-size: 15px;
    font-weight: 700;
    color: #0f172a;
}
.invoice-date-inline[data-v-0b710b5a] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    color: var(--text-secondary);
    margin-left: 8px;
    flex-shrink: 0;
}
.invoice-date-inline svg[data-v-0b710b5a] {
    opacity: 0.6;
}
.invoice-details[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    color: var(--text-secondary);
    flex-wrap: nowrap;
}
.invoice-details svg[data-v-0b710b5a] {
    flex-shrink: 0;
    opacity: 0.6;
}
.company-text[data-v-0b710b5a] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 320px;
    font-size: 14px;
    font-weight: 600;
    color: #334155;
}
.invoice-tax-id-row[data-v-0b710b5a] {
}
.invoice-tax-id-inline[data-v-0b710b5a] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 14px;
    color: var(--text-secondary);
    font-weight: 500;
    font-family: 'Courier New', monospace;
    flex-shrink: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}
.invoice-tax-id-inline svg[data-v-0b710b5a] {
    width: 12px;
    height: 12px;
    font-style: normal;
    color: #0ea5e9;
}
.invoice-tax-id-inline.vat-invalid-text[data-v-0b710b5a] {
    color: #ef4444;
    font-weight: 600;
}
.invoice-tax-id-inline.vat-invalid-text svg[data-v-0b710b5a] {
    color: #ef4444;
}
.invoice-tax-id[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: var(--text-secondary);
    font-weight: 500;
    font-family: 'Courier New', monospace;
}
.invoice-tax-id svg[data-v-0b710b5a] {
    flex-shrink: 0;
    opacity: 0.6;
    color: #6366f1;
}
.invoice-amount-wrapper[data-v-0b710b5a] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: flex-end;
    flex-shrink: 0;
    min-width: 140px;
    margin-right: 90px;
}
.invoice-amount[data-v-0b710b5a] {
    display: flex;
    align-items: baseline;
    gap: 6px;
    flex-wrap: wrap;
}
.amount-value[data-v-0b710b5a] {
    font-size: 22px;
    font-weight: 800;
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    line-height: 1;
    overflow-wrap: break-word;
    word-break: break-all;
    max-width: 100%;
}
.amount-currency[data-v-0b710b5a] {
    font-size: 16px;
    font-weight: 700;
    color: #64748b;
    line-height: 1;
}
.invoice-date[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
    color: var(--text-secondary);
}
.invoice-date svg[data-v-0b710b5a] {
    flex-shrink: 0;
    opacity: 0.6;
    width: 12px;
    height: 12px;
}
.invoice-meta-row[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    gap: 12px;
}
.invoice-payment[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    color: #64748b;
    font-weight: 600;
}
.invoice-payment svg[data-v-0b710b5a] {
    flex-shrink: 0;
    opacity: 0.7;
    color: #64748b;
}
.invoice-vat[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
}
.vat-label[data-v-0b710b5a] {
    font-weight: 600;
    color: #64748b;
}
.vat-amount[data-v-0b710b5a] {
    font-weight: 600;
    color: #64748b;
}
.invoice-type-selector[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-top: 4px;
}
.type-select[data-v-0b710b5a] {
    width: 100px;
    height: 30px;
    padding: 4px 12px;
    padding-right: 30px;
    border: 2px solid #e2e8f0;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    color: var(--text-primary);
    background: white;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 12 12'%3E%3Cpath fill='%23374151' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 10px center;
}
.type-select[data-v-0b710b5a]:hover {
    border-color: var(--primary);
    box-shadow: 0 2px 6px rgba(14, 165, 233, 0.15);
    transform: translateY(-1px);
}
.type-select[data-v-0b710b5a]:focus {
    outline: none;
    border-color: var(--primary);
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.type-select option[data-v-0b710b5a] {
    padding: 8px;
}

/* Actions */
.scan-actions[data-v-0b710b5a] {
    display: flex;
    gap: 8px;
    align-items: center;
    margin-left: auto;
    flex-shrink: 0;
}
.scan-actions .invoice-amount[data-v-0b710b5a] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    margin-right: auto;
    gap: 2px;
}
.btn-action[data-v-0b710b5a] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    min-width: 32px;
    padding: 0;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s ease;
    flex-shrink: 0;
}
.btn-action svg[data-v-0b710b5a] {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    display: block;
}
.btn-view[data-v-0b710b5a] {
    background: #0ea5e9;
    color: white;
}
.btn-view[data-v-0b710b5a]:hover {
    background: #0284c7;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.btn-export[data-v-0b710b5a] {
    background: #10b981;
    color: white;
}
.btn-export[data-v-0b710b5a]:hover {
    background: #059669;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
}
.btn-action.btn-delete[data-v-0b710b5a] {
    background: #ef4444;
    color: white;
}
.btn-action.btn-delete[data-v-0b710b5a]:hover {
    background: #dc2626;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(239, 68, 68, 0.3);
}

/* Pagination */
.pagination[data-v-0b710b5a] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    margin-top: 32px;
    padding: 24px 0;
}
.pagination-btn[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: white;
    border: 2px solid var(--border-color);
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.pagination-btn[data-v-0b710b5a]:hover:not(:disabled) {
    border-color: var(--primary);
    color: var(--primary);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(14, 165, 233, 0.2);
}
.pagination-btn[data-v-0b710b5a]:disabled {
    opacity: 0.3;
    cursor: not-allowed;
}
.pagination-pages[data-v-0b710b5a] {
    display: flex;
    gap: 8px;
}
.pagination-page[data-v-0b710b5a] {
    min-width: 44px;
    height: 44px;
    padding: 0 14px;
    background: white;
    border: 2px solid var(--border-color);
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.pagination-page[data-v-0b710b5a]:hover {
    border-color: var(--primary);
    color: var(--primary);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(14, 165, 233, 0.2);
}
.pagination-page.active[data-v-0b710b5a] {
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
    border-color: #0ea5e9;
    color: white;
    box-shadow: 0 4px 12px rgba(14, 165, 233, 0.4);
}

/* Totals Summary */
.totals-summary[data-v-0b710b5a] {
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    border-top: 3px solid var(--primary);
    border-radius: 12px;
    padding: 24px;
    margin-top: 24px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}
.totals-container[data-v-0b710b5a] {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 16px;
    align-items: stretch;
}
.totals-label[data-v-0b710b5a] {
    font-size: 18px;
    font-weight: 700;
    color: #64748b;
    letter-spacing: -0.01em;
    width: 100%;
    margin-bottom: 12px;
}
.currency-group[data-v-0b710b5a] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 16px;
    background: white;
    border-radius: 10px;
    border: 2px solid var(--border);
    flex: 1 1 300px;
    min-width: 280px;
    max-width: 100%;
}
.currency-header[data-v-0b710b5a] {
    font-size: 13px;
    font-weight: 800;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 6px 12px;
    border-bottom: 1px solid var(--border);
    background: #f9fafb;
    border-radius: 6px 6px 0 0;
    margin: -16px -16px 12px -16px;
}
.totals-items[data-v-0b710b5a] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.total-item[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 6px 10px;
    background: transparent;
    border-bottom: none;
    transition: all 0.2s ease;
}
.total-item[data-v-0b710b5a]:hover {
    background: rgba(14, 165, 233, 0.05);
}
.total-item.total-grand[data-v-0b710b5a] {
    background: transparent;
    border-top: 2px solid rgba(0, 0, 0, 0.1);
    border-bottom: none;
    padding: 8px 10px;
    margin-top: 2px;
}
.total-label[data-v-0b710b5a] {
    font-size: 12px;
    font-weight: 500;
    color: var(--text-secondary);
    flex-shrink: 0;
}
.total-grand .total-label[data-v-0b710b5a] {
    font-size: 13px;
    font-weight: 700;
    color: #64748b;
}
.total-value[data-v-0b710b5a] {
    font-size: 14px;
    font-weight: 700;
    color: var(--primary);
    text-align: right;
    white-space: nowrap;
}
.total-item:nth-child(2) .total-value[data-v-0b710b5a] {
    color: #64748b;
}
.total-grand .total-value[data-v-0b710b5a] {
    font-size: 16px;
    font-weight: 800;
    color: var(--primary);
}

/* Validation Warning Banner */
.validation-warning-banner[data-v-0b710b5a] {
    background-color: #fff3cd;
    padding: 12px 16px;
    margin-bottom: 16px;
    color: #856404;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 14px;
}
.validation-warning-banner svg[data-v-0b710b5a] {
    display: none;
}
.warning-content[data-v-0b710b5a] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.warning-summary[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
}
.validation-warning-banner strong[data-v-0b710b5a] {
    color: #856404;
    margin-right: 4px;
    flex-shrink: 0;
}
.validation-warning-banner span[data-v-0b710b5a] {
    color: #856404;
}
.clickable-warning[data-v-0b710b5a] {
    cursor: pointer;
    text-decoration: underline;
    font-weight: 600;
}
.clickable-warning[data-v-0b710b5a]:hover {
    color: #664d03;
}
.warning-details[data-v-0b710b5a] {
    margin-top: 8px;
    padding: 12px;
    background: transparent;
    border-radius: 6px;
    font-size: 13px;
}
.detail-item[data-v-0b710b5a] {
    padding: 6px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    display: flex;
    align-items: center;
    gap: 8px;
}
.detail-item[data-v-0b710b5a]:last-child {
    border-bottom: none;
}
.detail-item .btn-action.btn-view[data-v-0b710b5a] {
    width: 32px;
    height: 32px;
    min-width: 32px;
    min-height: 32px;
    padding: 0;
    background: #0ea5e9;
    border-color: #0ea5e9;
    color: white;
}
.detail-item .btn-action.btn-view[data-v-0b710b5a]:hover {
    background: #0284c7;
    border-color: #0284c7;
    box-shadow: 0 4px 16px rgba(14, 165, 233, 0.4);
}
.detail-item .btn-action.btn-view svg[data-v-0b710b5a] {
    color: white;
    width: 16px;
    height: 16px;
}
.detail-item strong[data-v-0b710b5a] {
    display: inline-block;
    margin-right: 8px;
    color: #664d03;
}
.invoice-link[data-v-0b710b5a] {
    text-decoration: none;
    color: #0066cc;
    transition: all 0.2s ease;
}
.invoice-link[data-v-0b710b5a]:hover {
    color: #0052a3;
    text-decoration: underline;
}
.invoice-link strong[data-v-0b710b5a] {
    color: inherit;
}
.missing-fields[data-v-0b710b5a] {
    color: #856404;
    font-style: italic;
}

/* Invalid VAT Warning Banner */
.invalid-vat-warning-banner[data-v-0b710b5a] {
    background-color: #fee;
    padding: 12px 16px;
    margin-bottom: 16px;
    color: #721c24;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
}
.invalid-vat-warning-banner svg[data-v-0b710b5a] {
    display: none;
}
.invalid-vat-warning-banner strong[data-v-0b710b5a] {
    color: #dc3545;
    margin-right: 4px;
    flex-shrink: 0;
}
.invalid-vat-warning-banner span[data-v-0b710b5a] {
    color: #721c24;
}

/* Total Mismatch Warning Banner */
.total-mismatch-warning-banner[data-v-0b710b5a] {
    background-color: #fff3cd;
    padding: 12px 16px;
    margin-bottom: 16px;
    color: #856404;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
}
.total-mismatch-warning-banner svg[data-v-0b710b5a] {
    display: none;
}
.total-mismatch-warning-banner strong[data-v-0b710b5a] {
    color: #856404;
    margin-right: 4px;
    flex-shrink: 0;
}
.total-mismatch-warning-banner span[data-v-0b710b5a] {
    color: #856404;
}


/* Responsive */
@media (max-width: 968px) {
.table-headers[data-v-0b710b5a] {
        display: none;
}
.scans-list[data-v-0b710b5a] {
        border: none;
        border-radius: 0;
        gap: 12px;
        background: transparent;
}
.scan-row[data-v-0b710b5a] {
        display: flex;
        flex-direction: column;
        gap: 0;
        padding: 0;
        position: relative;
        min-height: auto;
        border: 1px solid #e2e8f0;
        border-radius: 12px;
        background: white;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.scan-row[data-v-0b710b5a]:hover {
        border-left: 1px solid #e2e8f0;
        padding-left: 0;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.scan-checkbox[data-v-0b710b5a] {
        position: absolute;
        top: 12px;
        left: 12px;
        z-index: 15;
        background: white;
        border-radius: 4px;
        padding: 4px;
        box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
.scan-status[data-v-0b710b5a] {
        position: absolute;
        top: 12px;
        right: 12px;
        z-index: 10;
        padding: 6px 12px;
        font-size: 11px;
        border-radius: 6px;
        grid-column: unset;
        grid-row: unset;
        margin: 0;
}
.scan-thumbnail[data-v-0b710b5a] {
        width: 80px;
        height: 80px;
        border-radius: 8px;
        margin: 48px 0 0 12px;
        align-self: flex-start;
        grid-column: unset;
        grid-row: unset;
        flex-shrink: 0;
}
.scan-info[data-v-0b710b5a] {
        margin-left: 104px;
        margin-top: -80px;
        padding: 0 12px 12px 0;
        min-width: 0;
        width: calc(100% - 116px);
}
.invoice-header[data-v-0b710b5a] {
        display: flex;
        align-items: center;
        gap: 8px;
        flex-wrap: wrap;
        margin-bottom: 4px;
}
.invoice-number[data-v-0b710b5a] {
        font-size: 16px;
        font-weight: 700;
}
.invoice-type[data-v-0b710b5a] {
        font-size: 11px;
        background: #f1f5f9;
        padding: 2px 6px;
        border-radius: 4px;
}
.invoice-date[data-v-0b710b5a] {
        font-size: 12px;
        color: #64748b;
        margin-bottom: 4px;
}
.invoice-details[data-v-0b710b5a] {
        margin-bottom: 4px;
        flex-wrap: wrap;
}
.company-text[data-v-0b710b5a] {
        font-size: 14px;
        font-weight: 600;
        color: #334155;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        max-width: calc(100% - 20px);
        flex-basis: 100%;
}
.invoice-tax-id-row[data-v-0b710b5a] {
        margin-top: 4px;
        width: 100%;
}
.invoice-tax-id-inline[data-v-0b710b5a] {
        font-size: 12px;
        color: #64748b;
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        display: inline-flex;
        align-items: center;
        gap: 3px;
        flex-basis: 100%;
        margin-top: 4px;
}
.invoice-amount-wrapper[data-v-0b710b5a] {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 8px;
        background: #f8fafc;
        padding: 14px 12px;
        border-radius: 0;
        margin-top: 0;
        width: 100%;
        border-top: 1px solid #e2e8f0;
}
.invoice-amount[data-v-0b710b5a] {
        display: flex;
        flex-direction: row;
        align-items: baseline;
        gap: 4px;
}
.amount-value[data-v-0b710b5a] {
        font-size: 24px;
        font-weight: 700;
        color: #0f172a;
}
.amount-currency[data-v-0b710b5a] {
        font-size: 16px;
        font-weight: 600;
        color: #64748b;
}
.invoice-vat[data-v-0b710b5a] {
        display: none;
}
.invoice-payment[data-v-0b710b5a] {
        display: none;
}
.invoice-type-selector[data-v-0b710b5a] {
        display: none;
}
.scan-actions[data-v-0b710b5a] {
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 12px;
        width: 100%;
        margin-top: 0;
        border-top: 1px solid #e2e8f0;
        background: white;
        border-radius: 0 0 12px 12px;
        justify-content: flex-end;
}
.btn-action[data-v-0b710b5a] {
        width: 44px;
        height: 44px;
        min-width: 44px;
        min-height: 44px;
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 10px;
        font-size: 18px;
        border: none;
}
.btn-action svg[data-v-0b710b5a] {
        width: 20px;
        height: 20px;
}

    /* Upload rows */
.upload-row[data-v-0b710b5a] {
        flex-direction: row;
        flex-wrap: wrap;
        min-height: auto;
}
.upload-row .scan-checkbox[data-v-0b710b5a] {
        position: static;
        order: 1;
}
.upload-row .scan-status[data-v-0b710b5a] {
        position: static;
        order: 2;
        margin-left: auto;
}
.upload-row .scan-thumbnail[data-v-0b710b5a] {
        order: 3;
        width: 50px;
        height: 50px;
        margin: 0;
        align-self: center;
}
.upload-row .scan-info[data-v-0b710b5a] {
        order: 4;
        margin: 0;
        width: calc(100% - 130px);
}
.upload-row .scan-actions[data-v-0b710b5a] {
        order: 5;
        width: 100%;
        margin-top: 12px;
        justify-content: flex-end;
}

    /* Totals summary */
.totals-summary[data-v-0b710b5a] {
        padding: 16px;
        margin-top: 16px;
}
.totals-container[data-v-0b710b5a] {
        flex-direction: column;
        gap: 12px;
}
.currency-group[data-v-0b710b5a] {
        min-width: 100%;
}
.total-item[data-v-0b710b5a] {
        flex-direction: row;
        justify-content: space-between;
        padding: 8px 0;
}
.total-label[data-v-0b710b5a] {
        font-size: 14px;
}
.total-value[data-v-0b710b5a] {
        font-size: 16px;
}
.total-grand .total-label[data-v-0b710b5a] {
        font-size: 15px;
}
.total-grand .total-value[data-v-0b710b5a] {
        font-size: 18px;
}
}

/* Unique Partner Name Highlighting */
.company-text.unique-name[data-v-0b710b5a] {
    background-color: #ffebee;
    color: #c62828;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 4px;
}

/* Warning Icon */
.warning-icon[data-v-0b710b5a] {
    display: inline-flex;
    align-items: center;
    margin-left: 6px;
    color: #f59e0b;
    font-size: 14px;
    cursor: help;
    width: 14px;
    height: 14px;
}

/* VAT Validation Indicators */
.vat-indicator[data-v-0b710b5a] {
    display: inline-flex;
    align-items: center;
    margin-left: 6px;
    font-size: 14px;
    cursor: help;
}
.vat-indicator.vat-valid[data-v-0b710b5a] {
    color: #10b981;
}
.vat-indicator.vat-invalid[data-v-0b710b5a] {
    color: #ef4444;
}
.invoice-tax-id.vat-invalid-text[data-v-0b710b5a] {
    color: #ef4444;
    font-weight: 600;
}
.invoice-tax-id.vat-invalid-text svg[data-v-0b710b5a] {
    color: #ef4444;
}

/* Delete Confirmation Modal */
.modal-overlay[data-v-0b710b5a] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}
.modal-content[data-v-0b710b5a] {
    background: white;
    border-radius: 12px;
    padding: 24px;
    max-width: 400px;
    width: 90%;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    position: relative;
}
.modal-header[data-v-0b710b5a] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid #e2e8f0;
    position: relative;
}
.modal-header h3[data-v-0b710b5a] {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    color: #1e293b;
    padding-right: 40px;
}
.modal-header .btn[data-v-0b710b5a] {
    position: absolute;
    top: 0;
    right: 0;
    flex-shrink: 0;
}
.modal-actions[data-v-0b710b5a] {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    border-top: none;
    padding-top: 0;
}
.btn-confirm[data-v-0b710b5a],
.btn-cancel[data-v-0b710b5a] {
    padding: 10px 20px;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}
.btn-confirm[data-v-0b710b5a] {
    background: #ef4444;
    color: white;
}
.btn-confirm[data-v-0b710b5a]:hover {
    background: #dc2626;
}
.btn-cancel[data-v-0b710b5a] {
    background: #f1f5f9;
    color: #64748b;
}
.btn-cancel[data-v-0b710b5a]:hover {
    background: #e2e8f0;
}
.keyboard-hint[data-v-0b710b5a] {
    font-size: 11px;
    opacity: 0.7;
    font-weight: 400;
}

.modal-enter-active[data-v-db08e8cb],
.modal-leave-active[data-v-db08e8cb] {
  transition: opacity 0.3s ease;
}
.modal-enter-from[data-v-db08e8cb],
.modal-leave-to[data-v-db08e8cb] {
  opacity: 0;
}
.modal-enter-active .relative[data-v-db08e8cb],
.modal-leave-active .relative[data-v-db08e8cb] {
  transition: transform 0.3s ease;
}
.modal-enter-from .relative[data-v-db08e8cb],
.modal-leave-to .relative[data-v-db08e8cb] {
  transform: scale(0.9);
}

.modal-backdrop[data-v-113e6d44] {
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9998;
  display: flex;
  align-items: center;
  justify-content: center;
}
.modal-container[data-v-113e6d44] {
  position: relative;
  z-index: 9999;
  width: 100%;
  max-width: 700px;
  margin: 0 auto;
}
.vendor-code-modal[data-v-113e6d44] {
  max-width: 700px;
}
.modal-subtitle[data-v-113e6d44] {
  font-size: 14px;
  color: #6c757d;
  margin-top: 4px;
}
.vendors-list[data-v-113e6d44] {
  max-height: 400px;
  overflow-y: auto;
}
.vendor-item[data-v-113e6d44] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px;
  border-bottom: 1px solid #e9ecef;
  gap: 16px;
}
.vendor-item[data-v-113e6d44]:last-child {
  border-bottom: none;
}
.vendor-info[data-v-113e6d44] {
  flex: 1;
  min-width: 0;
}
.vendor-name[data-v-113e6d44] {
  font-weight: 500;
  color: #212529;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.vendor-vat[data-v-113e6d44] {
  font-size: 13px;
  color: #6c757d;
  margin-top: 2px;
}
.vendor-code-input[data-v-113e6d44] {
  flex: 0 0 200px;
}
.vendor-code-input input[data-v-113e6d44] {
  width: 100%;
  padding: 6px 12px;
  border: 1px solid #ced4da;
  border-radius: 4px;
  font-size: 14px;
}
.vendor-code-input input[data-v-113e6d44]:focus {
  outline: none;
  border-color: #80bdff;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.error-message[data-v-113e6d44] {
  background-color: #f8d7da;
  color: #721c24;
  padding: 12px;
  border-radius: 4px;
  margin-top: 16px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.loading-container[data-v-113e6d44] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 40px;
  color: #6c757d;
}
.spinner-small[data-v-113e6d44] {
  width: 20px;
  height: 20px;
  border: 2px solid #f3f3f3;
  border-top: 2px solid #3498db;
  border-radius: 50%;
  animation: spin-113e6d44 1s linear infinite;
}
@keyframes spin-113e6d44 {
0% { transform: rotate(0deg);
}
100% { transform: rotate(360deg);
}
}
.modal-footer[data-v-113e6d44] {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  padding: 16px 24px;
  border-top: 1px solid #e9ecef;
}
.btn[data-v-113e6d44] {
  padding: 8px 16px;
  border: none;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
}
.btn-secondary[data-v-113e6d44] {
  background-color: #6c757d;
  color: white;
}
.btn-secondary[data-v-113e6d44]:hover {
  background-color: #5a6268;
}
.btn-primary[data-v-113e6d44] {
  background-color: #007bff;
  color: white;
}
.btn-primary[data-v-113e6d44]:hover:not(:disabled) {
  background-color: #0056b3;
}
.btn-primary[data-v-113e6d44]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.modal-backdrop[data-v-4e1cb073] {
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9998;
  display: flex;
  align-items: center;
  justify-content: center;
}
.modal-container[data-v-4e1cb073] {
  position: relative;
  z-index: 9999;
  width: 100%;
  max-width: 700px;
  margin: 0 auto;
}
.invoice-vendor-code-modal[data-v-4e1cb073] {
  max-width: 700px;
}
.modal-content[data-v-4e1cb073] {
  background: white;
  border-radius: 12px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  max-height: 85vh;
  display: flex;
  flex-direction: column;
}
.modal-header[data-v-4e1cb073] {
  padding: 24px;
  border-bottom: 1px solid #e5e7eb;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.modal-title-section[data-v-4e1cb073] {
  flex: 1;
}
.modal-title[data-v-4e1cb073] {
  font-size: 20px;
  font-weight: 600;
  margin: 0;
  color: #111827;
}
.modal-subtitle[data-v-4e1cb073] {
  font-size: 14px;
  color: #6c757d;
  margin-top: 4px;
  margin-bottom: 0;
}
.btn-icon[data-v-4e1cb073] {
  background: none;
  border: none;
  color: #6b7280;
  cursor: pointer;
  font-size: 20px;
  padding: 4px;
  transition: color 0.2s;
}
.btn-icon[data-v-4e1cb073]:hover {
  color: #111827;
}
.modal-body[data-v-4e1cb073] {
  padding: 24px;
  flex: 1;
  overflow-y: auto;
}
.loading-container[data-v-4e1cb073] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 40px;
  color: #6b7280;
}
.spinner-small[data-v-4e1cb073] {
  width: 20px;
  height: 20px;
  border: 2px solid #e5e7eb;
  border-top-color: #3b82f6;
  border-radius: 50%;
  animation: spin-4e1cb073 0.6s linear infinite;
}
@keyframes spin-4e1cb073 {
to {
    transform: rotate(360deg);
}
}
.counterparties-list[data-v-4e1cb073] {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.counterparty-item[data-v-4e1cb073] {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  background: #f9fafb;
  border-radius: 8px;
  border: 1px solid #e5e7eb;
}
.counterparty-info[data-v-4e1cb073] {
  flex: 1;
  min-width: 0;
}
.counterparty-name-row[data-v-4e1cb073] {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
  min-width: 0;
}
.counterparty-name[data-v-4e1cb073] {
  font-weight: 500;
  color: #111827;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  flex: 1;
  min-width: 0;
}
.counterparty-type-badge[data-v-4e1cb073] {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 10px;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  flex-shrink: 0;
}
.badge-supplier[data-v-4e1cb073] {
  background: #dbeafe;
  color: #1e40af;
}
.badge-client[data-v-4e1cb073] {
  background: #fef3c7;
  color: #92400e;
}
.counterparty-vat[data-v-4e1cb073] {
  font-size: 13px;
  color: #6b7280;
}
.counterparty-code-input[data-v-4e1cb073] {
  width: 200px;
}
.form-control[data-v-4e1cb073] {
  width: 100%;
  padding: 8px 12px;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  font-size: 14px;
  transition: border-color 0.2s;
}
.form-control[data-v-4e1cb073]:focus {
  outline: none;
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
.error-message[data-v-4e1cb073] {
  margin-top: 16px;
  padding: 12px;
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: 6px;
  color: #991b1b;
  font-size: 14px;
}
.modal-footer[data-v-4e1cb073] {
  padding: 16px 24px;
  border-top: 1px solid #e5e7eb;
  display: flex;
  justify-content: flex-end;
  gap: 12px;
}
.btn[data-v-4e1cb073] {
  padding: 8px 16px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.btn-secondary[data-v-4e1cb073] {
  background: #f3f4f6;
  color: #374151;
}
.btn-secondary[data-v-4e1cb073]:hover {
  background: #e5e7eb;
}
.btn-primary[data-v-4e1cb073] {
  background: #3b82f6;
  color: white;
}
.btn-primary[data-v-4e1cb073]:hover:not(:disabled) {
  background: #2563eb;
}
.btn-primary[data-v-4e1cb073]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.account-code-selector[data-v-8145e22d] {
  width: 240px;
  min-width: 240px;
  max-width: 240px;
}
.dropdown-backdrop[data-v-8145e22d] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  background: transparent;
}
.selector-wrapper[data-v-8145e22d] {
  position: relative;
  width: 100%;
  z-index: 10000;
}
.selector-input[data-v-8145e22d] {
  position: relative;
  display: flex;
  align-items: center;
  padding: 8px 36px 8px 12px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: white;
  cursor: pointer;
  transition: all 0.2s ease;
  min-height: 38px;
  max-height: 38px;
  width: 100%;
  z-index: 10001;
}
.selector-input[data-v-8145e22d]:hover {
  border-color: #d1d5db;
}
.selector-input.missing[data-v-8145e22d] {
  border-color: #fb923c;
  background-color: #fff7ed;
}
.selector-input.missing[data-v-8145e22d]:hover {
  border-color: #f97316;
  background-color: #ffedd5;
}
.selector-input.open[data-v-8145e22d] {
  border-color: #0ea5e9;
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.selected-value[data-v-8145e22d] {
  flex: 1;
  font-size: 13px;
  color: #1f2937;
  display: flex;
  align-items: center;
  gap: 8px;
  overflow: hidden;
  min-width: 0;
}
.selected-value > span[data-v-8145e22d]:first-child {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
  min-width: 0;
}
.dropdown-icon[data-v-8145e22d] {
  position: absolute;
  right: 12px;
  flex-shrink: 0;
  color: #6b7280;
  transition: transform 0.2s ease;
  font-size: 11px;
  pointer-events: none;
}
.dropdown-icon.rotate[data-v-8145e22d] {
  transform: rotate(180deg);
}
.dropdown-menu[data-v-8145e22d] {
  background: white;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  z-index: 10002;
  max-height: 350px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.search-wrapper[data-v-8145e22d] {
  position: relative;
  padding: 8px;
  border-bottom: 1px solid #e5e7eb;
  background: #f9fafb;
  flex-shrink: 0;
}
.search-input[data-v-8145e22d] {
  width: 100%;
  padding: 8px 32px 8px 32px;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  font-size: 13px;
  outline: none;
  transition: all 0.2s ease;
  background: white;
}
.search-input[data-v-8145e22d]:focus {
  border-color: #0ea5e9;
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.search-icon[data-v-8145e22d] {
  position: absolute;
  left: 18px;
  top: 50%;
  transform: translateY(-50%);
  color: #9ca3af;
  font-size: 12px;
  pointer-events: none;
}
.clear-search[data-v-8145e22d] {
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #e5e7eb;
  border: none;
  border-radius: 50%;
  color: #6b7280;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 10px;
}
.clear-search[data-v-8145e22d]:hover {
  background: #d1d5db;
  color: #1f2937;
}
.dropdown-list[data-v-8145e22d] {
  max-height: 292px;
  overflow-y: auto;
  flex: 1;
}
.dropdown-item[data-v-8145e22d] {
  padding: 8px 12px;
  cursor: pointer;
  transition: background-color 0.15s ease;
  border-bottom: 1px solid #f3f4f6;
}
.dropdown-item[data-v-8145e22d]:last-child {
  border-bottom: none;
}
.dropdown-item[data-v-8145e22d]:hover {
  background-color: #f9fafb;
}
.dropdown-item.selected[data-v-8145e22d] {
  background-color: #eff6ff;
  color: #1e40af;
}
.dropdown-item.placeholder[data-v-8145e22d] {
  color: #9ca3af;
  font-style: italic;
}
.dropdown-item.no-results[data-v-8145e22d] {
  color: #9ca3af;
  font-style: italic;
  text-align: center;
  padding: 16px 12px;
}
.code-info[data-v-8145e22d] {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
}
.code-number[data-v-8145e22d] {
  font-weight: 600;
  color: #1f2937;
}
.code-separator[data-v-8145e22d] {
  color: #9ca3af;
}
.code-name[data-v-8145e22d] {
  color: #6b7280;
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dropdown-item.selected .code-number[data-v-8145e22d],
.dropdown-item.selected .code-name[data-v-8145e22d] {
  color: #1e40af;
}
.internal-code-badge-small[data-v-8145e22d] {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  font-size: 11px;
  font-weight: 600;
  border-radius: 10px;
  white-space: nowrap;
  margin-left: auto;
  flex-shrink: 0;
  box-shadow: 0 1px 3px rgba(102, 126, 234, 0.3);
}

/* Scrollbar styling */
.dropdown-list[data-v-8145e22d]::-webkit-scrollbar {
  width: 6px;
}
.dropdown-list[data-v-8145e22d]::-webkit-scrollbar-track {
  background: #f3f4f6;
  border-radius: 3px;
}
.dropdown-list[data-v-8145e22d]::-webkit-scrollbar-thumb {
  background: #d1d5db;
  border-radius: 3px;
}
.dropdown-list[data-v-8145e22d]::-webkit-scrollbar-thumb:hover {
  background: #9ca3af;
}

.internal-code-selector[data-v-23fb1390] {
  position: relative;
  width: 100%;
}
.selector-wrapper[data-v-23fb1390] {
  position: relative;
  width: 100%;
}
.selector-input[data-v-23fb1390] {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 18px 0 0;
  background: white;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.2s ease;
  height: 38px;
  z-index: 10001;
  width: 38px;
}
.selector-input[data-v-23fb1390]:hover {
  border-color: #d1d5db;
}
.selector-input.missing[data-v-23fb1390] {
  border-color: #fb923c;
  background-color: #fff7ed;
}
.selector-input.missing[data-v-23fb1390]:hover {
  border-color: #f97316;
  background-color: #ffedd5;
}
.selector-input.open[data-v-23fb1390] {
  border-color: #0ea5e9;
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.selected-value[data-v-23fb1390] {
  flex: 1;
  font-size: 13px;
  color: #1f2937;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.placeholder-text[data-v-23fb1390] {
  color: #1f2937;
  font-size: 13px;
  font-weight: 400;
}
.dropdown-icon[data-v-23fb1390] {
  position: absolute;
  right: 5px;
  flex-shrink: 0;
  color: #6b7280;
  transition: transform 0.2s ease;
  font-size: 8px;
  pointer-events: none;
}
.dropdown-icon.rotate[data-v-23fb1390] {
  transform: rotate(180deg);
}
.dropdown-menu[data-v-23fb1390] {
  background: white;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  z-index: 10002;
  max-height: 200px;
  overflow: hidden;
}
.dropdown-list[data-v-23fb1390] {
  max-height: 200px;
  overflow-y: auto;
}
.dropdown-item[data-v-23fb1390] {
  padding: 6px 10px;
  cursor: pointer;
  transition: background-color 0.15s ease;
  border-bottom: 1px solid #f3f4f6;
  text-align: center;
  font-size: 13px;
  font-weight: 600;
}
.dropdown-item[data-v-23fb1390]:last-child {
  border-bottom: none;
}
.dropdown-item[data-v-23fb1390]:hover {
  background-color: #f9fafb;
}
.dropdown-item.selected[data-v-23fb1390] {
  background-color: #eff6ff;
}
.dropdown-item.placeholder[data-v-23fb1390] {
  color: #9ca3af;
  font-style: italic;
  text-align: center;
  font-size: 12px;
}
.code-info[data-v-23fb1390] {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 600;
}
.selected-code[data-v-23fb1390] {
  font-size: 14px;
  font-weight: 600;
  color: #1f2937;
}
.internal-code-badge-display[data-v-23fb1390] {
  display: inline-flex;
  align-items: center;
  padding: 2px 7px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  font-size: 11px;
  font-weight: 600;
  border-radius: 8px;
  white-space: nowrap;
  box-shadow: 0 2px 4px rgba(102, 126, 234, 0.3);
}

.modal-overlay[data-v-7e424515] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  padding: 20px;
}
.modal-content[data-v-7e424515] {
  background: white;
  border-radius: 16px;
  max-width: 500px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}
.modal-header[data-v-7e424515] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px;
  border-bottom: 1px solid var(--border);
}
.modal-header-content[data-v-7e424515] {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
}
.modal-header h2[data-v-7e424515] {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}
.btn-close[data-v-7e424515] {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  border-radius: 8px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-close[data-v-7e424515]:hover {
  background: var(--bg-gray);
  color: var(--text-primary);
}
.modal-body[data-v-7e424515] {
  padding: 24px;
}
.form-group[data-v-7e424515] {
  margin-bottom: 20px;
}
.form-group label[data-v-7e424515] {
  display: block;
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  margin-bottom: 8px;
}
.required[data-v-7e424515] {
  color: var(--danger);
}
.form-group input[type="text"][data-v-7e424515],
.form-group select[data-v-7e424515] {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid var(--border);
  border-radius: 8px;
  font-size: 14px;
  transition: all 0.2s ease;
}
.form-group input[data-v-7e424515]:focus,
.form-group select[data-v-7e424515]:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px var(--primary-light);
}
.form-row[data-v-7e424515] {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 12px;
}
.checkbox-label[data-v-7e424515] {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  user-select: none;
}
.checkbox-label input[type="checkbox"][data-v-7e424515] {
  width: 18px;
  height: 18px;
  cursor: pointer;
}
.field-hint[data-v-7e424515] {
  font-size: 13px;
  color: #6b7280;
  margin-top: 4px;
  font-style: italic;
}
.input-with-button[data-v-7e424515] {
  display: flex;
  gap: 8px;
  align-items: stretch;
}
.input-with-button input[data-v-7e424515] {
  flex: 1;
}
.input-with-button .btn-icon[data-v-7e424515] {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--bg-gray);
  border: 1px solid var(--border);
  border-radius: 6px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
  margin: 0;
  padding: 0;
  flex-shrink: 0;
}
.input-with-button .btn-icon[data-v-7e424515]:hover {
  background: var(--primary-light);
  border-color: var(--primary);
  color: var(--primary);
}
.input-with-button .btn-icon[data-v-7e424515]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.input-with-button .btn-icon[data-v-7e424515]:disabled:hover {
  background: var(--bg-gray);
  border-color: var(--border);
  color: var(--text-secondary);
}
.modal-footer[data-v-7e424515] {
  display: flex;
  gap: 12px;
  justify-content: flex-end;
  padding-top: 20px;
  border-top: 1px solid var(--border);
}
.btn-secondary[data-v-7e424515],
.btn-primary[data-v-7e424515] {
  padding: 12px 24px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-secondary[data-v-7e424515] {
  background: transparent;
  border: 1px solid var(--border);
  color: var(--text-primary);
}
.btn-secondary[data-v-7e424515]:hover {
  background: var(--bg-gray);
}
.btn-primary[data-v-7e424515] {
  background: var(--primary);
  border: none;
  color: white;
}
.btn-primary[data-v-7e424515]:hover:not(:disabled) {
  background: var(--primary-hover);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.btn-primary[data-v-7e424515]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
@media (max-width: 640px) {
.form-row[data-v-7e424515] {
    grid-template-columns: 1fr;
}
}

/* Descriptions Modal Styles */
.descriptions-modal-overlay[data-v-7e424515] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1100;
}
.descriptions-modal-content[data-v-7e424515] {
  background: white;
  border-radius: 12px;
  width: 90%;
  max-width: 600px;
  max-height: 80vh;
  display: flex;
  flex-direction: column;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}
.descriptions-modal-header[data-v-7e424515] {
  padding: 20px 24px;
  border-bottom: 1px solid var(--border);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.descriptions-modal-header h3[data-v-7e424515] {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  color: var(--text-primary);
}
.descriptions-modal-body[data-v-7e424515] {
  padding: 24px;
  overflow-y: auto;
  flex: 1;
}
.add-description-section[data-v-7e424515] {
  margin-bottom: 24px;
  padding: 16px;
}
.add-description-label[data-v-7e424515] {
  display: block;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
}
.add-description-input-group[data-v-7e424515] {
  display: flex;
  gap: 8px;
}
.add-description-input[data-v-7e424515] {
  flex: 1;
  padding: 10px 12px;
  border: 1px solid var(--border);
  border-radius: 8px;
  font-size: 14px;
  background: white;
  color: var(--text-primary);
  transition: border-color 0.2s ease;
}
.add-description-input[data-v-7e424515]:focus {
  outline: none;
  border-color: var(--primary);
}
.descriptions-header[data-v-7e424515] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
  gap: 16px;
}
.descriptions-select-all[data-v-7e424515] {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px;
  background: var(--bg-gray);
  border-radius: 8px;
  flex: 1;
}
.select-all-label[data-v-7e424515] {
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
  cursor: pointer;
  user-select: none;
}
.descriptions-count-inline[data-v-7e424515] {
  font-size: 14px;
  color: var(--text-secondary);
  font-weight: 500;
}
.descriptions-count[data-v-7e424515] {
  padding: 12px;
  background: var(--bg-gray);
  border-radius: 8px;
  font-size: 14px;
  color: var(--text-secondary);
  font-weight: 500;
  flex: 1;
}
.descriptions-actions[data-v-7e424515] {
  display: flex;
  gap: 8px;
}
.btn-delete-selected[data-v-7e424515] {
  padding: 10px 16px;
  background: #ef4444;
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}
.btn-delete-selected[data-v-7e424515]:hover:not(:disabled) {
  background: #dc2626;
  transform: translateY(-1px);
}
.btn-delete-selected[data-v-7e424515]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.descriptions-list[data-v-7e424515] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.description-item[data-v-7e424515] {
  display: flex;
  gap: 12px;
  padding: 12px;
  background: white;
  border: 1px solid var(--border);
  border-radius: 8px;
  transition: all 0.2s ease;
  align-items: center;
}
.description-item[data-v-7e424515]:hover {
  background: var(--bg-gray);
  border-color: var(--primary);
}
.description-checkbox[data-v-7e424515] {
  width: 18px;
  height: 18px;
  cursor: pointer;
  flex-shrink: 0;
}
.description-number[data-v-7e424515] {
  color: var(--text-secondary);
  font-weight: 600;
  font-size: 14px;
  min-width: 30px;
}
.description-text[data-v-7e424515] {
  color: var(--text-primary);
  font-size: 14px;
  line-height: 1.5;
  word-break: break-word;
  flex: 1;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 4px;
  transition: background-color 0.2s ease;
}
.description-text[data-v-7e424515]:hover {
  background-color: #f3f4f6;
}
.internal-code-badge[data-v-7e424515] {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  font-size: 12px;
  font-weight: 600;
  border-radius: 12px;
  margin-left: 8px;
  white-space: nowrap;
  box-shadow: 0 2px 4px rgba(102, 126, 234, 0.2);
}
.internal-code-badge-small[data-v-7e424515] {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  font-size: 11px;
  font-weight: 600;
  border-radius: 10px;
  white-space: nowrap;
  margin-left: auto;
  flex-shrink: 0;
  box-shadow: 0 1px 3px rgba(102, 126, 234, 0.3);
}
.internal-code-input[data-v-7e424515] {
  width: 120px;
  padding: 6px 10px;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  font-size: 12px;
  color: var(--text-primary);
  background: #f9fafb;
  transition: all 0.2s ease;
  margin-left: auto;
  flex-shrink: 0;
}

/* iOS-style toggle for Active / Default Account Code form rows */
.form-group-toggle[data-v-7e424515] {
  display: flex;
  align-items: center;
  gap: 12px;
}
.toggle[data-v-7e424515] {
  position: relative;
  display: inline-block;
  width: 36px;
  height: 20px;
  flex-shrink: 0;
  cursor: pointer;
  margin: 0;
}
.toggle input[data-v-7e424515] {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}
.toggle-track[data-v-7e424515] {
  position: absolute;
  inset: 0;
  background: #cbd5e1;
  border-radius: 20px;
  transition: background 0.2s ease;
  cursor: pointer;
}
.toggle-track[data-v-7e424515]::before {
  content: '';
  position: absolute;
  height: 14px;
  width: 14px;
  left: 3px;
  bottom: 3px;
  background: white;
  border-radius: 50%;
  transition: transform 0.2s ease;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}
.toggle input:checked + .toggle-track[data-v-7e424515] {
  background: var(--primary);
}
.toggle input:checked + .toggle-track[data-v-7e424515]::before {
  transform: translateX(16px);
}
.toggle input:focus-visible + .toggle-track[data-v-7e424515] {
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.15);
}
.toggle-text[data-v-7e424515] {
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  user-select: none;
}

/* Loose-match toggle below the Description Mapping field — sits under the input */
.form-group-toggle-inline[data-v-7e424515] {
  margin-top: 10px;
}

/* Loose-match toggle inline with each description list row */
.form-group-toggle-row[data-v-7e424515] {
  flex-shrink: 0;
}
.form-group-toggle-row .toggle-text[data-v-7e424515] {
  font-size: 12px;
  color: var(--text-secondary);
}
.internal-code-input[data-v-7e424515]:focus {
  outline: none;
  border-color: var(--primary);
  background: white;
  box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}
.internal-code-input[data-v-7e424515]::placeholder {
  color: #9ca3af;
  font-size: 11px;
}
.description-edit-input[data-v-7e424515] {
  flex: 1;
  padding: 6px 10px;
  border: 2px solid var(--primary);
  border-radius: 6px;
  font-size: 14px;
  color: var(--text-primary);
  outline: none;
  background: white;
}
.edit-actions[data-v-7e424515] {
  display: flex;
  gap: 6px;
  margin-left: auto;
}
.btn-save-edit[data-v-7e424515],
.btn-cancel-edit[data-v-7e424515] {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-save-edit[data-v-7e424515] {
  background: #10b981;
  color: white;
}
.btn-save-edit[data-v-7e424515]:hover:not(:disabled) {
  background: #059669;
  transform: scale(1.05);
}
.btn-save-edit[data-v-7e424515]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.btn-cancel-edit[data-v-7e424515] {
  background: #ef4444;
  color: white;
}
.btn-cancel-edit[data-v-7e424515]:hover {
  background: #dc2626;
  transform: scale(1.05);
}
.descriptions-modal-footer[data-v-7e424515] {
  padding: 16px 24px;
  border-top: 1px solid var(--border);
  display: flex;
  justify-content: flex-end;
}

.modal-backdrop[data-v-9fdfa2f2] {
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9998;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  overflow-x: auto;
}
.modal-container[data-v-9fdfa2f2] {
  position: relative;
  z-index: 9999;
  width: 1378px !important;
  min-width: 1378px !important;
  margin: 0 auto;
}
.missing-account-codes-modal[data-v-9fdfa2f2] {
  max-width: 1378px !important;
  width: 1378px !important;
}
.modal-content[data-v-9fdfa2f2] {
  background: white;
  border-radius: 12px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
  max-height: 90vh;
  display: flex;
  flex-direction: column;
}
.modal-header[data-v-9fdfa2f2] {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 24px 28px;
  border-bottom: 1px solid #e5e7eb;
  background: linear-gradient(to bottom, #ffffff, #fafbfc);
  gap: 16px;
  border-radius: 12px 12px 0 0;
}
.modal-title-section[data-v-9fdfa2f2] {
  flex: 1;
}
.modal-header-actions[data-v-9fdfa2f2] {
  display: flex;
  align-items: center;
  gap: 12px;
}
.modal-title[data-v-9fdfa2f2] {
  font-size: 22px;
  font-weight: 700;
  margin: 0;
  color: #111827;
  letter-spacing: -0.01em;
}
.modal-subtitle[data-v-9fdfa2f2] {
  font-size: 14px;
  color: #6b7280;
  margin-top: 6px;
  margin-bottom: 12px;
  font-weight: 400;
}
.header-actions-row[data-v-9fdfa2f2] {
  display: flex;
  align-items: flex-end;
  gap: 16px;
  flex-wrap: nowrap;
}
.modal-title-section .btn-add[data-v-9fdfa2f2] {
  margin-top: 8px;
}
.btn-icon[data-v-9fdfa2f2] {
  background: transparent;
  border: none;
  padding: 8px;
  cursor: pointer;
  color: #6b7280;
  border-radius: 6px;
  transition: all 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
}
.btn-icon[data-v-9fdfa2f2]:hover {
  background: #f3f4f6;
  color: #374151;
}
.modal-body[data-v-9fdfa2f2] {
  padding: 24px 28px;
  overflow-y: auto;
  flex: 1;
}
.loading-container[data-v-9fdfa2f2] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 40px;
  color: #6b7280;
  font-size: 15px;
}
.spinner-small[data-v-9fdfa2f2] {
  width: 20px;
  height: 20px;
  border: 2px solid #e5e7eb;
  border-top-color: #3b82f6;
  border-radius: 50%;
  animation: spin-9fdfa2f2 0.8s linear infinite;
}
@keyframes spin-9fdfa2f2 {
to { transform: rotate(360deg);
}
}
.items-list[data-v-9fdfa2f2] {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.invoice-group[data-v-9fdfa2f2] {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.invoice-header[data-v-9fdfa2f2] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 14px 18px;
  background: linear-gradient(135deg, #f8fafc 0%, #eef2f7 100%);
  border-left: 4px solid #3b82f6;
  border-radius: 8px;
  margin-bottom: 6px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}
.invoice-header-actions[data-v-9fdfa2f2] {
  display: flex;
  align-items: center;
  gap: 16px;
}
.invoice-mapping[data-v-9fdfa2f2] {
  display: flex;
  gap: 8px;
  flex: 0 0 auto;
  align-items: center;
}
.invoice-mapping > .account-code-selector[data-v-9fdfa2f2] {
  flex: 1;
  min-width: 300px;
}
.invoice-mapping > .internal-code-selector[data-v-9fdfa2f2] {
  flex: 0 0 auto;
  width: auto;
}
.invoice-title[data-v-9fdfa2f2] {
  display: flex;
  align-items: center;
  gap: 12px;
  font-weight: 600;
  color: #1e293b;
  font-size: 15px;
}
.invoice-info[data-v-9fdfa2f2] {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.invoice-main-line[data-v-9fdfa2f2] {
  display: flex;
  align-items: center;
  gap: 12px;
}
.invoice-icon[data-v-9fdfa2f2] {
  color: #3b82f6;
  font-size: 18px;
}
.invoice-number[data-v-9fdfa2f2] {
  color: #0f172a;
  font-weight: 700;
}
.vendor-name[data-v-9fdfa2f2] {
  color: #64748b;
  font-weight: 500;
  padding-left: 8px;
  border-left: 2px solid #cbd5e1;
}
.item-count[data-v-9fdfa2f2] {
  display: block;
  font-size: 12px;
  color: #64748b;
  font-weight: 600;
}
.btn-add[data-v-9fdfa2f2] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 18px;
  background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
  color: white;
  border: none;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.25);
  max-width: 150px;
  height: 40px;
}
.btn-add svg[data-v-9fdfa2f2] {
  flex-shrink: 0;
}
.btn-add[data-v-9fdfa2f2]:hover {
  background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%);
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(14, 165, 233, 0.35);
}
.btn-add[data-v-9fdfa2f2]:active {
  transform: translateY(0);
}
.item-row[data-v-9fdfa2f2] {
  display: flex;
  align-items: flex-start;
  padding: 10px 14px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  gap: 12px;
  background: white;
  transition: all 0.2s;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}
.item-row[data-v-9fdfa2f2]:hover {
  border-color: #cbd5e1;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  transform: translateY(-1px);
}
.item-info[data-v-9fdfa2f2] {
  flex: 1;
  min-width: 0;
}
.item-type-badge[data-v-9fdfa2f2] {
  display: inline-block;
  padding: 3px 8px;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 0;
  letter-spacing: 0.3px;
  flex-shrink: 0;
  width: fit-content;
}
.item-type-badge.barcode[data-v-9fdfa2f2] {
  color: #1e40af;
}
.item-type-badge.description[data-v-9fdfa2f2] {
  color: #6b21a8;
}
.item-type-badge.both[data-v-9fdfa2f2] {
  background: linear-gradient(135deg, #fed7aa 0%, #fdba74 100%);
  color: #92400e;
  border: 1px solid #fbbf24;
}
.combined-item[data-v-9fdfa2f2] {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 8px 8px;
  row-gap: 8px;
  align-items: center;
}
.combined-item[data-v-9fdfa2f2] > * {
  flex-shrink: 0;
}
.combined-item .mt-2[data-v-9fdfa2f2] {
  margin-top: 0;
  margin-left: 0;
}
.item-value[data-v-9fdfa2f2] {
  font-weight: 600;
  color: #111827;
  margin-bottom: 0;
  word-break: break-word;
  font-size: 13px;
  line-height: 1.4;
  display: inline-block;
}
.item-description[data-v-9fdfa2f2],
.item-barcode[data-v-9fdfa2f2] {
  font-size: 13px;
  color: #6b7280;
  margin-top: 6px;
  font-weight: 500;
  padding: 6px 10px;
  background: #f9fafb;
  border-radius: 6px;
  border-left: 3px solid #e5e7eb;
}
.item-mapping[data-v-9fdfa2f2] {
  flex: 0 0 auto;
  margin-left: auto;
  display: flex;
  gap: 8px;
  align-items: center;
  max-width: 540px;
}
.item-mapping > .account-code-selector[data-v-9fdfa2f2] {
  flex: 1;
  min-width: 280px;
  max-width: 420px;
}
.item-mapping > .internal-code-selector[data-v-9fdfa2f2] {
  flex: 0 0 auto;
  width: auto;
}
.item-mapping .btn-add-quick[data-v-9fdfa2f2] {
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: 6px;
  background: #0ea5e9;
  color: white;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.item-mapping .btn-add-quick svg[data-v-9fdfa2f2] {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  display: block;
}
.item-mapping .btn-add-quick[data-v-9fdfa2f2]:hover {
  background: #0284c7;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.item-mapping .btn-add-quick[data-v-9fdfa2f2]:active {
  transform: translateY(0);
}
.item-mapping select[data-v-9fdfa2f2] {
  width: 100%;
  padding: 10px 14px;
  border: 2px solid #e5e7eb;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 500;
  background: white;
  color: #374151;
  cursor: pointer;
  transition: all 0.2s;
}
.item-mapping select[data-v-9fdfa2f2]:hover {
  border-color: #cbd5e1;
}
.item-mapping select[data-v-9fdfa2f2]:focus {
  outline: none;
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
.error-message[data-v-9fdfa2f2] {
  padding: 14px 18px;
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: 8px;
  color: #991b1b;
  margin-top: 16px;
  font-size: 14px;
  font-weight: 500;
}
.modal-footer[data-v-9fdfa2f2] {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  padding: 20px 28px;
  border-top: 1px solid #e5e7eb;
  background: #fafbfc;
  border-radius: 0 0 12px 12px;
}
.btn[data-v-9fdfa2f2] {
  padding: 11px 24px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
  display: flex;
  align-items: center;
  gap: 8px;
  letter-spacing: 0.01em;
}
.btn-secondary[data-v-9fdfa2f2] {
  background: white;
  color: #374151;
  border: 2px solid #e5e7eb;
}
.btn-secondary[data-v-9fdfa2f2]:hover {
  background: #f9fafb;
  border-color: #d1d5db;
}
.btn-primary[data-v-9fdfa2f2] {
  background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
  color: white;
  box-shadow: 0 4px 12px rgba(59, 130, 246, 0.3);
}
.btn-primary[data-v-9fdfa2f2]:hover:not(:disabled) {
  background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
  box-shadow: 0 6px 16px rgba(59, 130, 246, 0.4);
  transform: translateY(-1px);
}
.btn-primary[data-v-9fdfa2f2]:disabled {
  background: #d1d5db;
  color: #9ca3af;
  cursor: not-allowed;
  box-shadow: none;
}

/* Account Code Modal Wrapper - Ensure it appears above this modal */
.account-code-modal-wrapper[data-v-9fdfa2f2] {
  z-index: 10100;
}
.account-code-modal-wrapper[data-v-9fdfa2f2] .modal-overlay {
  z-index: 10100 !important;
}

/* Mobile Responsive Styles */
@media (max-width: 768px) {
.modal-backdrop[data-v-9fdfa2f2] {
    padding: 10px;
}
.modal-content[data-v-9fdfa2f2] {
    max-height: 95vh;
}
.modal-header[data-v-9fdfa2f2] {
    padding: 16px;
    flex-wrap: wrap;
}
.modal-header-actions[data-v-9fdfa2f2] {
    width: 100%;
    order: -1;
    justify-content: flex-end;
    margin-bottom: 12px;
}
.modal-title-section[data-v-9fdfa2f2] {
    width: 100%;
}
.modal-title[data-v-9fdfa2f2] {
    font-size: 18px;
}
.modal-subtitle[data-v-9fdfa2f2] {
    font-size: 13px;
}
.header-actions-row[data-v-9fdfa2f2] {
    flex-direction: column;
    align-items: stretch;
}
.modal-body[data-v-9fdfa2f2] {
    padding: 16px;
}
.btn-add[data-v-9fdfa2f2] {
    width: 100%;
    justify-content: center;
}
.invoice-header[data-v-9fdfa2f2] {
    flex-direction: column;
    align-items: stretch;
    padding: 12px;
    gap: 12px;
}
.invoice-title[data-v-9fdfa2f2] {
    flex-wrap: wrap;
    font-size: 14px;
}
.invoice-number[data-v-9fdfa2f2] {
    font-size: 14px;
}
.vendor-name[data-v-9fdfa2f2] {
    font-size: 13px;
    padding-left: 6px;
    flex-basis: 100%;
    border-left: none;
    padding-top: 4px;
}
.invoice-header-actions[data-v-9fdfa2f2] {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
}
.invoice-mapping[data-v-9fdfa2f2] {
    min-width: 100%;
}
.item-count[data-v-9fdfa2f2] {
    text-align: center;
}
.item-row[data-v-9fdfa2f2] {
    flex-direction: column;
    padding: 12px;
    gap: 10px;
}
.item-info[data-v-9fdfa2f2] {
    width: 100%;
}
.combined-item[data-v-9fdfa2f2] {
    flex-wrap: wrap;
}
.item-mapping[data-v-9fdfa2f2] {
    flex: 1;
    width: 100%;
    margin-left: 0;
}
.modal-footer[data-v-9fdfa2f2] {
    padding: 16px;
    flex-direction: column;
}
.btn[data-v-9fdfa2f2] {
    width: 100%;
    justify-content: center;
}
}
@media (max-width: 480px) {
.modal-backdrop[data-v-9fdfa2f2] {
    padding: 0;
}
.modal-content[data-v-9fdfa2f2] {
    border-radius: 0;
    max-height: 100vh;
}
.modal-header[data-v-9fdfa2f2] {
    padding: 12px;
}
.modal-title[data-v-9fdfa2f2] {
    font-size: 16px;
}
.modal-body[data-v-9fdfa2f2] {
    padding: 12px;
}
.invoice-header[data-v-9fdfa2f2] {
    padding: 10px;
}
.invoice-title[data-v-9fdfa2f2] {
    font-size: 13px;
    gap: 8px;
}
.item-row[data-v-9fdfa2f2] {
    padding: 10px;
}
.item-value[data-v-9fdfa2f2] {
    font-size: 12px;
}
.item-type-badge[data-v-9fdfa2f2] {
    font-size: 9px;
    padding: 2px 6px;
}
}

.modal-backdrop[data-v-f4e8f12c] {
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9998;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  overflow-x: auto;
}
.modal-container[data-v-f4e8f12c] {
  position: relative;
  z-index: 9999;
  width: 1100px;
  min-width: 1100px;
  margin: 0 auto;
}
.vat-exemption-modal[data-v-f4e8f12c] {
  max-width: 1100px;
  width: 1100px;
}
.modal-content[data-v-f4e8f12c] {
  background: white;
  border-radius: 12px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
  max-height: 90vh;
  display: flex;
  flex-direction: column;
}
.modal-header[data-v-f4e8f12c] {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 24px 28px;
  border-bottom: 1px solid #e5e7eb;
  background: linear-gradient(to bottom, #ffffff, #fafbfc);
  gap: 16px;
  border-radius: 12px 12px 0 0;
}
.modal-title-section[data-v-f4e8f12c] {
  flex: 1;
}
.modal-title[data-v-f4e8f12c] {
  font-size: 22px;
  font-weight: 700;
  margin: 0;
  color: #111827;
  letter-spacing: -0.01em;
}
.modal-subtitle[data-v-f4e8f12c] {
  font-size: 14px;
  color: #6b7280;
  margin-top: 6px;
  margin-bottom: 0;
  font-weight: 400;
}
.btn-icon[data-v-f4e8f12c] {
  background: transparent;
  border: none;
  padding: 8px;
  cursor: pointer;
  color: #6b7280;
  border-radius: 6px;
  transition: all 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
}
.btn-icon[data-v-f4e8f12c]:hover {
  background: #f3f4f6;
  color: #374151;
}
.modal-body[data-v-f4e8f12c] {
  padding: 24px 28px;
  overflow-y: auto;
  flex: 1;
}
.loading-container[data-v-f4e8f12c] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 40px;
  color: #6b7280;
  font-size: 15px;
}
.spinner-small[data-v-f4e8f12c] {
  width: 20px;
  height: 20px;
  border: 2px solid #e5e7eb;
  border-top-color: #3b82f6;
  border-radius: 50%;
  animation: spin-f4e8f12c 0.8s linear infinite;
}
@keyframes spin-f4e8f12c {
to { transform: rotate(360deg);
}
}
.invoices-list[data-v-f4e8f12c] {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.invoice-item[data-v-f4e8f12c] {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  padding: 16px 18px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  gap: 16px;
  background: white;
  transition: all 0.2s;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}
.invoice-item[data-v-f4e8f12c]:hover {
  border-color: #cbd5e1;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  transform: translateY(-1px);
}
.invoice-thumbnail[data-v-f4e8f12c] {
  width: 60px;
  height: 60px;
  border-radius: 8px;
  overflow: hidden;
  background: #f1f5f9;
  border: 2px solid #e2e8f0;
  flex-shrink: 0;
  cursor: pointer;
  transition: all 0.2s ease;
}
.invoice-thumbnail[data-v-f4e8f12c]:hover {
  border-color: #0ea5e9;
  transform: scale(1.05);
}
.thumbnail-img[data-v-f4e8f12c] {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.invoice-content[data-v-f4e8f12c] {
  display: flex;
  flex-direction: column;
  gap: 14px;
  flex: 1;
  min-width: 0;
}
.invoice-info[data-v-f4e8f12c] {
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 0 0 auto;
}
.invoice-header-line[data-v-f4e8f12c] {
  display: flex;
  align-items: center;
  gap: 12px;
}
.invoice-icon[data-v-f4e8f12c] {
  color: #3b82f6;
  font-size: 16px;
  flex-shrink: 0;
}
.invoice-number[data-v-f4e8f12c] {
  font-weight: 700;
  color: #0f172a;
  font-size: 15px;
}
.separator[data-v-f4e8f12c] {
  color: #cbd5e1;
  font-weight: 400;
  font-size: 15px;
}
.vendor-name[data-v-f4e8f12c] {
  color: #64748b;
  font-weight: 500;
}
.vat-rate[data-v-f4e8f12c] {
  color: #ea580c;
  font-weight: 600;
  padding: 2px 8px;
  background: #ffedd5;
  border-radius: 4px;
  font-size: 12px;
  margin-left: 12px;
}
.invoice-fields[data-v-f4e8f12c] {
  display: grid;
  grid-template-columns: 240px 480px;
  gap: 12px;
}
.field-group[data-v-f4e8f12c] {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.field-group label[data-v-f4e8f12c] {
  font-size: 12px;
  font-weight: 600;
  color: #374151;
  text-transform: uppercase;
  letter-spacing: 0.025em;
}
.field-group .form-control[data-v-f4e8f12c] {
  width: 100%;
  padding: 8px 12px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 400;
  background: white;
  color: #1f2937;
  transition: all 0.2s ease;
  min-height: 38px;
}
.field-group select.form-control[data-v-f4e8f12c] {
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%236b7280' d='M201.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 338.7 54.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 11px;
  padding-right: 36px;
}
.field-group .form-control[data-v-f4e8f12c]:hover {
  border-color: #d1d5db;
}
.field-group .form-control[data-v-f4e8f12c]:focus {
  outline: none;
  border-color: #0ea5e9;
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.error-message[data-v-f4e8f12c] {
  padding: 14px 18px;
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: 8px;
  color: #991b1b;
  margin-top: 16px;
  font-size: 14px;
  font-weight: 500;
}
.modal-footer[data-v-f4e8f12c] {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  padding: 20px 28px;
  border-top: 1px solid #e5e7eb;
  background: #fafbfc;
  border-radius: 0 0 12px 12px;
}
.btn[data-v-f4e8f12c] {
  padding: 11px 24px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
  display: flex;
  align-items: center;
  gap: 8px;
  letter-spacing: 0.01em;
}
.btn-secondary[data-v-f4e8f12c] {
  background: white;
  color: #374151;
  border: 2px solid #e5e7eb;
}
.btn-secondary[data-v-f4e8f12c]:hover {
  background: #f9fafb;
  border-color: #d1d5db;
}
.btn-primary[data-v-f4e8f12c] {
  background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
  color: white;
  box-shadow: 0 4px 12px rgba(59, 130, 246, 0.3);
}
.btn-primary[data-v-f4e8f12c]:hover:not(:disabled) {
  background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
  box-shadow: 0 6px 16px rgba(59, 130, 246, 0.4);
  transform: translateY(-1px);
}
.btn-primary[data-v-f4e8f12c]:disabled {
  background: #d1d5db;
  color: #9ca3af;
  cursor: not-allowed;
  box-shadow: none;
}

/* Mobile Responsive Styles */
@media (max-width: 768px) {
.modal-backdrop[data-v-f4e8f12c] {
    padding: 0;
    overflow-y: auto;
}
.modal-container[data-v-f4e8f12c] {
    width: 100%;
    min-width: auto;
    max-width: 100%;
    margin: 0;
}
.vat-exemption-modal[data-v-f4e8f12c] {
    width: 100%;
    max-width: 100%;
    min-width: auto;
}
.modal-content[data-v-f4e8f12c] {
    border-radius: 0;
    max-height: 100vh;
    min-height: 100vh;
}
.modal-header[data-v-f4e8f12c] {
    padding: 12px 16px;
    gap: 8px;
}
.modal-title-section[data-v-f4e8f12c] {
    padding-right: 24px;
}
.modal-title[data-v-f4e8f12c] {
    font-size: 16px;
    line-height: 1.3;
}
.modal-subtitle[data-v-f4e8f12c] {
    font-size: 12px;
    line-height: 1.4;
}
.close-btn[data-v-f4e8f12c] {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 32px;
    height: 32px;
    padding: 6px;
}
.modal-body[data-v-f4e8f12c] {
    padding: 12px;
    gap: 12px;
    overflow-y: auto;
}
.invoice-item[data-v-f4e8f12c] {
    padding: 12px;
    gap: 10px;
    flex-direction: column;
}
.invoice-thumbnail[data-v-f4e8f12c] {
    display: none;
}
.invoice-content[data-v-f4e8f12c] {
    margin-left: 0;
    width: 100%;
}
.invoice-header-line[data-v-f4e8f12c] {
    flex-wrap: wrap;
    gap: 4px 6px;
    font-size: 12px;
}
.invoice-icon[data-v-f4e8f12c] {
    font-size: 14px;
}
.invoice-number[data-v-f4e8f12c] {
    font-size: 13px;
}
.vendor-name[data-v-f4e8f12c] {
    font-size: 12px;
    word-break: break-word;
}
.separator[data-v-f4e8f12c] {
    font-size: 13px;
}
.vat-rate[data-v-f4e8f12c] {
    padding: 2px 6px;
    font-size: 10px;
}
.invoice-fields[data-v-f4e8f12c] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    grid-template-columns: none;
}
.field-group[data-v-f4e8f12c] {
    width: 100%;
}
.field-group label[data-v-f4e8f12c] {
    font-size: 12px;
    font-weight: 600;
    margin-bottom: 6px;
}
.form-control[data-v-f4e8f12c] {
    font-size: 14px;
    padding: 10px 12px;
    width: 100%;
}
.modal-footer[data-v-f4e8f12c] {
    padding: 12px 16px;
    flex-direction: column-reverse;
    gap: 10px;
    border-top: 1px solid #e5e7eb;
}
.btn[data-v-f4e8f12c] {
    width: 100%;
    justify-content: center;
    font-size: 15px;
    padding: 12px 16px;
}
}


/* Use global modal-backdrop and modal-container from app.css */
/* Custom styles only for specific modal content */
.export-columns-modal[data-v-e58fa22a] {
  /* Override global modal-content height to extend to max */
  max-height: 90vh;
  display: flex;
  flex-direction: column;
  border-radius: 1rem;
  overflow: hidden;
}
.modal-header[data-v-e58fa22a] {
  /* Modal header is already styled globally, just add specific overrides */
  flex-shrink: 0;
  border-radius: 1rem 1rem 0 0;
}
.modal-header h2[data-v-e58fa22a] {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 600;
}
.modal-body[data-v-e58fa22a] {
  /* Override global modal-body to work with flex layout */
  flex: 1;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  min-height: 0;
}
.columns-instructions[data-v-e58fa22a] {
  padding: 12px;
  background: var(--info-bg, #eff6ff);
  border-radius: 8px;
  border-left: 3px solid var(--info-border, #3b82f6);
}
.columns-instructions p[data-v-e58fa22a] {
  margin: 0;
  font-size: 14px;
  color: var(--text-secondary, #374151);
}
.columns-search[data-v-e58fa22a] {
  width: 100%;
}
.search-input[data-v-e58fa22a] {
  width: 100%;
  padding: 10px 14px;
  border: 1px solid var(--border-color, #d1d5db);
  border-radius: 8px;
  font-size: 14px;
}
.columns-actions[data-v-e58fa22a] {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.type-filter-bar[data-v-e58fa22a] {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  background: var(--bg-secondary, #f9fafb);
  border: 1px solid var(--border-color, #e5e7eb);
  border-radius: 8px;
}
.type-filter-label[data-v-e58fa22a] {
  font-size: 13px;
  font-weight: 500;
  color: var(--text-secondary, #6b7280);
  white-space: nowrap;
}
.type-filter-buttons[data-v-e58fa22a] {
  display: flex;
  gap: 4px;
}
.type-filter-btn[data-v-e58fa22a] {
  padding: 5px 14px;
  font-size: 13px;
  font-weight: 500;
  border: 1px solid var(--border-color, #d1d5db);
  border-radius: 6px;
  background: #fff;
  color: var(--text-primary, #374151);
  cursor: pointer;
  transition: all 0.15s;
}
.type-filter-btn[data-v-e58fa22a]:hover {
  background: #f3f4f6;
}
.type-filter-btn.active[data-v-e58fa22a] {
  background: var(--primary, #4f8cff);
  color: #fff;
  border-color: var(--primary, #4f8cff);
}
.btn-sm[data-v-e58fa22a] {
  padding: 6px 12px;
  font-size: 13px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.columns-list[data-v-e58fa22a] {
  flex: 1;
  overflow-y: auto;
  border: 1px solid var(--border-color, #e5e7eb);
  border-radius: 8px;
  padding: 8px;
  background: var(--bg-secondary, #f9fafb);
  min-height: 0;
}
.column-item[data-v-e58fa22a] {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px;
  background: white;
  border: 1px solid var(--border-color, #e5e7eb);
  border-radius: 6px;
  margin-bottom: 8px;
  transition: all 0.2s;
}
.column-item[data-v-e58fa22a]:hover {
  border-color: var(--primary, #4f8cff);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.column-item.disabled[data-v-e58fa22a] {
  opacity: 0.5;
}
.drag-handle[data-v-e58fa22a] {
  cursor: grab;
  color: var(--text-tertiary, #9ca3af);
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
}
.drag-handle[data-v-e58fa22a]:active {
  cursor: grabbing;
}
.column-order[data-v-e58fa22a] {
  width: 40px;
  height: 32px;
  text-align: center;
  background: var(--bg-tertiary, #f3f4f6);
  border: 1px solid transparent;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  color: var(--text-secondary, #6b7280);
  padding: 0 4px;
  transition: border-color 0.15s ease;
  -moz-appearance: textfield;
}
.column-order[data-v-e58fa22a]::-webkit-outer-spin-button,
.column-order[data-v-e58fa22a]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.column-order[data-v-e58fa22a]:focus {
  outline: none;
  border-color: var(--primary-color, #3b82f6);
  background: #fff;
}
.column-toggle[data-v-e58fa22a] {
  position: relative;
  display: inline-block;
  width: 36px;
  height: 20px;
  flex-shrink: 0;
  cursor: pointer;
}
.column-toggle input[data-v-e58fa22a] {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}
.toggle-track[data-v-e58fa22a] {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #ccc;
  border-radius: 10px;
  transition: background 0.2s;
}
.toggle-track[data-v-e58fa22a]::before {
  content: '';
  position: absolute;
  width: 14px;
  height: 14px;
  left: 3px;
  bottom: 3px;
  background: white;
  border-radius: 50%;
  transition: transform 0.2s;
}
.column-toggle input:checked + .toggle-track[data-v-e58fa22a] {
  background: var(--primary, #4f8cff);
}
.column-toggle input:checked + .toggle-track[data-v-e58fa22a]::before {
  transform: translateX(16px);
}
.column-info[data-v-e58fa22a] {
  flex: 1;
  min-width: 0;
}
.column-label[data-v-e58fa22a] {
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary, #111827);
  margin-bottom: 2px;
}
.column-key[data-v-e58fa22a] {
  font-size: 12px;
  color: var(--text-tertiary, #9ca3af);
  font-family: monospace;
}
.modal-footer[data-v-e58fa22a] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem 2rem;
  border-top: 1px solid var(--border-color, #e5e7eb);
  background: var(--bg-secondary, #f9fafb);
  flex-shrink: 0;
  border-radius: 0 0 1rem 1rem;
}
.footer-left[data-v-e58fa22a] {
  flex: 1;
}
.selected-count[data-v-e58fa22a] {
  font-size: 13px;
  color: var(--text-secondary, #6b7280);
  font-weight: 500;
}
.footer-right[data-v-e58fa22a] {
  display: flex;
  gap: 12px;
}
.btn-secondary[data-v-e58fa22a],
.btn-primary[data-v-e58fa22a] {
  padding: 10px 20px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.btn-secondary[data-v-e58fa22a] {
  background: white;
  border: 1px solid var(--border-color, #d1d5db);
  color: var(--text-primary, #374151);
}
.btn-secondary[data-v-e58fa22a]:hover {
  background: var(--hover-bg, #f3f4f6);
}
.btn-primary[data-v-e58fa22a] {
  background: var(--primary, #4f8cff);
  color: white;
}
.btn-primary[data-v-e58fa22a]:hover {
  background: var(--primary-dark, #3b7ad8);
}
.btn-primary[data-v-e58fa22a]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.missing-info-warning[data-v-c046c323] {
  background-color: #fff3cd;
  /* border-radius removed */
  padding: 12px 16px;
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #856404;
}
.missing-info-warning svg[data-v-c046c323] { display: none;
}
.missing-info-warning strong[data-v-c046c323] {
  color: #856404;
  margin-right: 4px;
  flex-shrink: 0;
}
.missing-info-warning span[data-v-c046c323] {
  color: #856404;
}
.invalid-vat-warning[data-v-c046c323] {
  background-color: #fee;

  /* border-radius removed */
  padding: 12px 16px;
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #721c24;
}
.invalid-vat-warning svg[data-v-c046c323] { display: none;
}
.invalid-vat-warning strong[data-v-c046c323] {
  color: #dc3545;
  margin-right: 4px;
  flex-shrink: 0;
}
.invalid-vat-warning span[data-v-c046c323] {
  color: #721c24;
}
.vat-conflict-warning[data-v-c046c323] {
  background-color: #fff3cd;

  /* border-radius removed */
  padding: 12px 16px;
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #856404;
}
.vat-conflict-warning svg[data-v-c046c323] { display: none;
}
.vat-conflict-warning strong[data-v-c046c323] {
  color: #856404;
  margin-right: 4px;
  flex-shrink: 0;
}
.vat-conflict-warning span[data-v-c046c323] {
  color: #856404;
}
.missing-info-warning[data-v-c046c323] {
  background-color: #fff3cd;
  /* border-radius removed */
  padding: 12px 16px;
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #856404;
}
.missing-info-warning svg[data-v-c046c323] { display: none;
}
.missing-info-warning strong[data-v-c046c323] {
  color: #856404;
  margin-right: 4px;
  flex-shrink: 0;
}
.missing-info-warning span[data-v-c046c323] {
  color: #856404;
}
.invalid-vat-warning[data-v-c046c323] {
  background-color: #fee;
  /* border-radius removed */
  padding: 12px 16px;
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #721c24;
}
.invalid-vat-warning svg[data-v-c046c323] { display: none;
}
.invalid-vat-warning strong[data-v-c046c323] {
  color: #dc3545;
  margin-right: 4px;
  flex-shrink: 0;
}
.invalid-vat-warning span[data-v-c046c323] {
  color: #721c24;
}
.vat-conflict-warning[data-v-c046c323] {
  background-color: #fff3cd;
  /* border-radius removed */
  padding: 12px 16px;
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #856404;
}
.vat-conflict-warning svg[data-v-c046c323] { display: none;
}
.vat-conflict-warning strong[data-v-c046c323] {
  color: #856404;
  margin-right: 4px;
  flex-shrink: 0;
}
.vat-conflict-warning span[data-v-c046c323] {
  color: #856404;
}
.invoices-table-container[data-v-c046c323] {
  margin-top: 20px;
  overflow-x: scroll;
  border: 1px solid var(--border-color);
  /* border-radius removed */
  scrollbar-gutter: stable;
}
.invoices-table-container[data-v-c046c323]::-webkit-scrollbar {
  height: 8px;
  display: block;
}
.invoices-table-container[data-v-c046c323]::-webkit-scrollbar-track {
  background: #f1f1f1;
  display: block;
}
.invoices-table-container[data-v-c046c323]::-webkit-scrollbar-thumb {
  background: #888;
  display: block;
}
.invoices-table-container[data-v-c046c323]::-webkit-scrollbar-thumb:hover {
  background: #555;
}
.invoices-review-table[data-v-c046c323] {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  table-layout: fixed;
}
.invoices-review-table thead[data-v-c046c323] {
  background-color: var(--bg-secondary);
  position: sticky;
  top: 0;
  z-index: 1;
}
.invoices-review-table th[data-v-c046c323] {
  padding: 8px 10px;
  text-align: left;
  font-weight: 600;
  color: var(--text-primary);
  border-bottom: 2px solid var(--border-color);
  white-space: nowrap;
}
.invoices-review-table th[data-v-c046c323]:nth-child(1) { width: 12%;
} /* Invoice Number */
.invoices-review-table th[data-v-c046c323]:nth-child(2) { width: 10%;
}  /* Date */
.invoices-review-table th[data-v-c046c323]:nth-child(3) { width: 11%;
} /* Company VAT */
.invoices-review-table th[data-v-c046c323]:nth-child(4) { width: 11%;
} /* Partner VAT */
.invoices-review-table th[data-v-c046c323]:nth-child(5) { width: 20%;
} /* Partner Name */
.invoices-review-table th[data-v-c046c323]:nth-child(6) { width: 6%;
}  /* Currency */
.invoices-review-table th[data-v-c046c323]:nth-child(7) { width: 10%;
} /* VAT Amount */
.invoices-review-table th[data-v-c046c323]:nth-child(8) { width: 10%;
} /* Total Amount */
.invoices-review-table th[data-v-c046c323]:nth-child(9) { width: 10%; text-align: center;
} /* Actions */
.invoices-review-table td[data-v-c046c323] {
  padding: 8px 10px;
  border-bottom: 1px solid var(--border-light);
  color: var(--text-secondary);
  overflow: visible;
}
.invoices-review-table tbody tr[data-v-c046c323]:hover {
  background-color: var(--bg-hover);
}
.invoices-review-table tbody tr:last-child td[data-v-c046c323] {
  border-bottom: none;
}
.invoices-review-table td.amount[data-v-c046c323] {
  text-align: right;
  font-weight: 500;
  font-family: 'Courier New', monospace;
}
.invoices-review-table td.missing-data[data-v-c046c323] {
  background-color: #fee;
  color: #dc3545;
  font-weight: 600;
}
.invoices-review-table td.conflict-vat[data-v-c046c323] {
  background-color: #ffeb3b;
  color: #856404;
  font-weight: 600;
}
td.conflict-vat .editable-field[data-v-c046c323] {
  background-color: #ffeb3b !important;
  border-color: #ffc107 !important;
}
.conflict-vat-row[data-v-c046c323] {
  background-color: rgba(255, 235, 59, 0.2);
}
.conflict-vat-row[data-v-c046c323]:hover {
  background-color: rgba(255, 235, 59, 0.3);
}
.invoices-review-table td.unique-name[data-v-c046c323] {
  background-color: #ffebee;
  color: #c62828;
  font-weight: 600;
}
td.unique-name .editable-field[data-v-c046c323] {
  background-color: #ffebee !important;
  border-color: #ef5350 !important;
}
.type-badge[data-v-c046c323] {
  display: inline-block;
  padding: 4px 12px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 500;
  text-transform: uppercase;
}
.type-badge.type-invoice[data-v-c046c323] {
  background-color: #e3f2fd;
  color: #1976d2;
}
.type-badge.type-credit_note[data-v-c046c323] {
  background-color: #fff3e0;
  color: #f57c00;
}
.type-badge.type-debit_note[data-v-c046c323] {
  background-color: #fce4ec;
  color: #c2185b;
}
.type-badge.type-receipt[data-v-c046c323] {
  background-color: #e8f5e9;
  color: #388e3c;
}
.type-badge.type-unknown[data-v-c046c323] {
  background-color: #f5f5f5;
  color: #757575;
}
.editable-field[data-v-c046c323] {
  width: 100%;
  padding: 4px 6px;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-size: 13px;
  font-family: inherit;
  background-color: white;
  transition: border-color 0.2s;
}
.editable-field[data-v-c046c323]:focus {
  outline: none;
  border-color: #4a90e2;
  box-shadow: 0 0 0 2px rgba(74, 144, 226, 0.1);
}
.editable-field[data-v-c046c323]:hover {
  border-color: #999;
}
.missing-data .editable-field[data-v-c046c323] {
  background-color: #fee;
  border-color: #dc3545;
}
.missing-data .editable-field[data-v-c046c323]:focus {
  background-color: white;
  border-color: #4a90e2;
}
input[type="number"].editable-field[data-v-c046c323] {
  text-align: left;
}
.loading-container[data-v-c046c323] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 40px;
  color: var(--text-secondary);
}
.no-data[data-v-c046c323] {
  text-align: center;
  padding: 40px;
  color: var(--text-secondary);
  font-style: italic;
}
.format-option[data-v-c046c323] {
  cursor: pointer;
  transition: all 0.2s ease;
}
.format-option.has-submenu[data-v-c046c323] {
  cursor: pointer;
  position: relative;
}
.format-option[data-v-c046c323]:hover:not(.loading) {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.format-option.submenu-open[data-v-c046c323] {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.format-option.loading[data-v-c046c323] {
  pointer-events: none;
  opacity: 0.6;
}
.format-content[data-v-c046c323] {
  position: relative;
}
.format-arrow[data-v-c046c323] {
  position: absolute;
  right: -32px;
  top: 4px;
  color: var(--text-secondary);
  font-size: 14px;
  transition: transform 0.2s ease;
}
.format-submenu[data-v-c046c323] {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--border-color);
}
.submenu-actions[data-v-c046c323] {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-left: auto;
  flex-shrink: 0;
}
.submenu-expand-arrow[data-v-c046c323] {
  margin-left: auto;
  color: #999;
  font-size: 0.7rem;
  flex-shrink: 0;
}
.submenu-item.type-open[data-v-c046c323] {
  background-color: #eef3fb;
  flex-wrap: wrap;
}
.type-options[data-v-c046c323] {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid #e0e0e0;
}
.type-option[data-v-c046c323] {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px 8px 28px;
  border-radius: 6px;
  cursor: pointer;
  font-size: 0.85rem;
  color: var(--text-color, #333);
  background-color: #e9ecef;
  transition: all 0.2s ease;
}
.type-option[data-v-c046c323]:hover {
  background-color: #fff;
}
.type-option-icon[data-v-c046c323] {
  width: 16px;
  color: #666;
  font-size: 0.8rem;
}
.submenu-item[data-v-c046c323] {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px;
  margin: 4px 0;
  border-radius: 6px;
  transition: all 0.2s ease;
  background-color: #f8f9fa;
  position: relative;
}
.submenu-item[data-v-c046c323]:hover {
  background-color: #e9ecef;
}
.submenu-item.selected[data-v-c046c323] {
  background-color: rgba(74, 144, 226, 0.1);
  border-left: 3px solid var(--primary);
}
.submenu-item-main[data-v-c046c323] {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
  cursor: pointer;
}
.submenu-item-main[data-v-c046c323]:hover {
  transform: translateX(4px);
}
.submenu-settings-btn[data-v-c046c323] {
  background: white;
  border: 1px solid var(--border-color, #d1d5db);
  border-radius: 6px;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s;
  color: var(--text-secondary, #6b7280);
  flex-shrink: 0;
}
.submenu-settings-btn[data-v-c046c323]:hover {
  background: var(--primary, #4f8cff);
  color: white;
  border-color: var(--primary, #4f8cff);
}
.submenu-icon[data-v-c046c323] {
  color: var(--primary);
  font-size: 20px;
  width: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.submenu-details[data-v-c046c323] {
  flex: 1;
}
.submenu-name[data-v-c046c323] {
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  margin-bottom: 2px;
}
.submenu-description[data-v-c046c323] {
  font-size: 12px;
  color: var(--text-secondary);
  line-height: 1.3;
}
.format-loading[data-v-c046c323] {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
}
.loading-message[data-v-c046c323] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 20px;
  color: var(--text-secondary);
  font-size: 14px;
}
.spinner-small[data-v-c046c323] {
  width: 16px;
  height: 16px;
  border: 2px solid var(--border-color);
  border-top-color: var(--primary);
  border-radius: 50%;
  animation: spin-c046c323 0.6s linear infinite;
}
@keyframes spin-c046c323 {
to { transform: rotate(360deg);
}
}
.btn-success[data-v-c046c323] {
  background-color: #10b981;
  color: white;
  margin-right: 8px;
}
.btn-success[data-v-c046c323]:hover:not(:disabled) {
  background-color: #059669;
}
.btn-success[data-v-c046c323]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.flex[data-v-c046c323] {
  display: flex;
}
.items-center[data-v-c046c323] {
  align-items: center;
}
.gap-2[data-v-c046c323] {
  gap: 0.5rem;
}
.btn-view[data-v-c046c323] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  min-width: 32px;
  padding: 4px 8px;
  border: none;
  border-radius: 4px;
  background-color: #4a90e2;
  color: white;
  font-size: 14px;
  cursor: pointer;
  transition: background-color 0.2s;
}
.btn-view[data-v-c046c323]:hover {
  background-color: #357abd;
}
.btn-view[data-v-c046c323]:active {
  transform: translateY(0);
}
.select-seller-btn[data-v-c046c323] {
  padding: 4px 8px;
  min-width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  background-color: #4a90e2;
  color: white;
  border: none;
  cursor: pointer;
  transition: background-color 0.2s;
}
.select-seller-btn[data-v-c046c323]:hover {
  background-color: #357abd;
}

/* Accounting Date Modal */
.accounting-date-modal .modal-container[data-v-c046c323] {
  max-width: 720px;
}
.accounting-date-hint[data-v-c046c323] {
  margin: 0 0 16px 0;
  padding: 12px 16px;
  background: linear-gradient(135deg, #dbeafe 0%, #f0f9ff 100%);
  border-left: 4px solid var(--primary, #0ea5e9);
  color: var(--text-primary);
  font-size: 13px;
  line-height: 1.5;
}
.accounting-date-modal .form-group[data-v-c046c323] {
  margin-top: 8px;
}
.accounting-date-modal .form-group label[data-v-c046c323] {
  display: block;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 8px;
  color: var(--text-primary);
}
.accounting-date-modal .form-control[data-v-c046c323] {
  width: 100%;
  padding: 10px 12px;
  border: 2px solid var(--border);
  border-radius: 8px;
  font-size: 14px;
  color: var(--text-primary);
  transition: all 0.2s ease;
}
.accounting-date-modal .form-control[data-v-c046c323]:focus {
  outline: none;
  border-color: var(--primary, #0ea5e9);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.accounting-date-invoice-list[data-v-c046c323] {
  margin-top: 20px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: white;
  overflow: hidden;
}
.accounting-date-list-header[data-v-c046c323] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 16px;
  background: #f8fafc;
  border-bottom: 1px solid var(--border);
  font-size: 13px;
  color: var(--text-primary);
}
.accounting-date-table[data-v-c046c323] {
  max-height: 340px;
  overflow-y: auto;
}
.accounting-date-row[data-v-c046c323] {
  display: grid;
  grid-template-columns: 36px 1fr 140px 180px;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-bottom: 1px solid var(--border);
  font-size: 13px;
  color: var(--text-primary);
}
.accounting-date-row[data-v-c046c323]:last-child {
  border-bottom: 0;
}
.accounting-date-row[data-v-c046c323]:hover:not(.accounting-date-row-head) {
  background: #f8fafc;
}
.accounting-date-row-head[data-v-c046c323] {
  position: sticky;
  top: 0;
  background: #f1f5f9;
  color: var(--text-secondary);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  padding: 10px 16px;
  z-index: 1;
}
.accounting-date-col-idx[data-v-c046c323] {
  text-align: right;
  color: var(--text-secondary);
  font-variant-numeric: tabular-nums;
}
.accounting-date-col-number[data-v-c046c323] {
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.accounting-date-col-doc-date[data-v-c046c323] {
  color: var(--text-secondary);
  font-variant-numeric: tabular-nums;
}
.accounting-date-col-muted[data-v-c046c323] {
  color: #cbd5e1;
}
.accounting-date-col-post-date[data-v-c046c323] {
  display: flex;
  align-items: center;
  gap: 6px;
}
.accounting-date-row-input[data-v-c046c323] {
  flex: 1;
  min-width: 0;
  padding: 6px 10px;
  border: 1.5px solid var(--border);
  border-radius: 6px;
  font-size: 13px;
  color: var(--text-primary);
  background: white;
  transition: all 0.15s ease;
  font-variant-numeric: tabular-nums;
}
.accounting-date-row-input[data-v-c046c323]:focus {
  outline: none;
  border-color: var(--primary, #0ea5e9);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.accounting-date-row-reset[data-v-c046c323] {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 1px solid var(--border);
  border-radius: 6px;
  color: var(--text-secondary);
  cursor: pointer;
  flex-shrink: 0;
  transition: all 0.15s ease;
}
.accounting-date-row-reset[data-v-c046c323]:hover {
  background: #fef2f2;
  border-color: #fecaca;
  color: #dc2626;
}
@media (max-width: 640px) {
.accounting-date-row[data-v-c046c323] {
    grid-template-columns: 28px 1fr 140px;
    grid-template-areas:
      "idx number docdate"
      ".   post   post";
    gap: 6px 8px;
}
.accounting-date-col-idx[data-v-c046c323] { grid-area: idx;
}
.accounting-date-col-number[data-v-c046c323] { grid-area: number;
}
.accounting-date-col-doc-date[data-v-c046c323] { grid-area: docdate;
}
.accounting-date-col-post-date[data-v-c046c323] { grid-area: post;
}
.accounting-date-row-head[data-v-c046c323] { display: none;
}
}

/* Warning Confirmation Modal */
.warning-confirmation-modal .modal-container[data-v-c046c323] {
  max-width: 500px;
}
.warning-confirmation-content[data-v-c046c323] {
  padding: 24px 0;
}
.warning-confirmation-content .warning-message[data-v-c046c323] {
  margin: 12px 0;
  padding: 12px 16px;
  /* border-radius removed */
  font-size: 14px;
  line-height: 1.5;
}
.warning-confirmation-content .warning-message-error[data-v-c046c323] {
  background-color: #fef2f2;
  border-left: 4px solid #dc3545;
  color: #991b1b;
}
.warning-confirmation-content .warning-message-error strong[data-v-c046c323] {
  color: #dc3545;
  font-weight: 600;
}
.warning-confirmation-content .warning-message-warning[data-v-c046c323] {
  background-color: #fefce8;
  border-left: 4px solid #f59e0b;
  color: #92400e;
}
.warning-confirmation-content .warning-message-warning strong[data-v-c046c323] {
  color: #d97706;
  font-weight: 600;
}
.warning-confirmation-content .confirmation-question[data-v-c046c323] {
  margin-top: 24px;
  margin-bottom: 0;
  font-size: 16px;
  font-weight: 600;
  color: var(--text-primary);
  text-align: center;
}

/* Responsive Styles for screens less than 1350px */
@media (max-width: 1349px) {
.invoices-table-container[data-v-c046c323] {
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
}
.invoices-review-table[data-v-c046c323] {
    min-width: 1200px;
}
}

/* VAT Validation Indicators */
.vat-indicator-inline[data-v-c046c323] {
  display: inline-flex;
  align-items: center;
  margin-left: 4px;
  font-size: 14px;
  cursor: help;
  vertical-align: middle;
}
.vat-indicator-inline.vat-valid[data-v-c046c323] {
  color: #10b981;
}
.vat-indicator-inline.vat-invalid[data-v-c046c323] {
  color: #ef4444;
}
.vat-invalid-cell[data-v-c046c323] {
  color: #ef4444 !important;
  font-weight: 600;
}
.vat-invalid-cell input[data-v-c046c323] {
  color: #ef4444 !important;
  font-weight: 600;
  border-color: #ef4444 !important;
}


.home-page[data-v-445a5cad] {
    min-height: 100vh;
    background: var(--bg-gray);
    padding: 24px 0;
}
.page-container[data-v-445a5cad] {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 24px;
}

/* Company Selection Screen (STATE A) */
.company-selection-screen[data-v-445a5cad] {
    min-height: 80vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
}
.selection-card[data-v-445a5cad] {
    background: white;
    border-radius: 20px;
    padding: 60px 80px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
    text-align: center;
    max-width: 600px;
    width: 100%;
}
.selection-icon[data-v-445a5cad] {
    margin-bottom: 32px;
}
.selection-title[data-v-445a5cad] {
    font-size: 32px;
    font-weight: 700;
    text-wrap: pretty;
    word-break: break-all;
    color: var(--text-primary);
    margin: 0 0 12px 0;
}
.selection-subtitle[data-v-445a5cad] {
    font-size: 18px;
    color: var(--text-secondary);
    margin: 0 0 40px 0;
}
.selection-selector[data-v-445a5cad] {
    margin-bottom: 24px;
}
.selection-hint[data-v-445a5cad] {
    font-size: 14px;
    color: var(--text-secondary);
    margin: 0;
}
.link-button[data-v-445a5cad] {
    background: none;
    border: none;
    color: var(--primary);
    font-weight: 600;
    cursor: pointer;
    text-decoration: underline;
    padding: 0;
    font-size: 14px;
}
.link-button[data-v-445a5cad]:hover {
    color: #0284c7;
}

/* Company Header Bar (STATE B) */
.company-header-bar[data-v-445a5cad] {
    background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%);
    border-radius: 12px;
    padding: 20px 24px;
    margin-bottom: 20px;
    box-shadow: 0 2px 8px rgba(14, 165, 233, 0.2);
}
.company-info[data-v-445a5cad] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.company-name-badge[data-v-445a5cad] {
    display: flex;
    align-items: center;
    gap: 12px;
    color: white;
}
.company-name-badge svg[data-v-445a5cad] {
    flex-shrink: 0;
}
.company-name[data-v-445a5cad] {
    font-size: 20px;
    font-weight: 700;
    color: white;
}
.btn-switch-company[data-v-445a5cad] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 20px;
    background: rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 8px;
    color: white;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    backdrop-filter: blur(10px);
}
.btn-switch-company[data-v-445a5cad]:hover {
    background: rgba(255, 255, 255, 0.3);
    border-color: rgba(255, 255, 255, 0.5);
    transform: translateX(-2px);
}
.btn-switch-company svg[data-v-445a5cad] {
    flex-shrink: 0;
    display: block;
    vertical-align: middle;
}

/* Upload Section */
.upload-section[data-v-445a5cad] {
    margin-bottom: 32px;
}

/* QR Code Section */
.qr-code-section[data-v-445a5cad] {
    display: flex;
    align-items: center;
    gap: 32px;
    background: white;
    border-radius: 16px;
    padding: 32px;
    margin-bottom: 32px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.qr-code-card[data-v-445a5cad] {
    flex-shrink: 0;
    width: 200px;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 2px solid var(--border);
    border-radius: 12px;
    padding: 16px;
}
.qr-code-image[data-v-445a5cad] {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.qr-code-placeholder[data-v-445a5cad] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: var(--text-secondary);
}
.qr-code-placeholder p[data-v-445a5cad] {
    font-size: 13px;
    margin: 0;
}
.spinner[data-v-445a5cad] {
    width: 32px;
    height: 32px;
    border: 3px solid var(--border);
    border-top-color: var(--primary);
    border-radius: 50%;
    animation: spin-445a5cad 1s linear infinite;
}
@keyframes spin-445a5cad {
to {
        transform: rotate(360deg);
}
}
.qr-info[data-v-445a5cad] {
    flex: 1;
}
.qr-title[data-v-445a5cad] {
    font-size: 20px;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 8px 0;
}
.qr-description[data-v-445a5cad] {
    font-size: 15px;
    color: var(--text-secondary);
    margin: 0;
    line-height: 1.6;
}

/* Scans Section */
.scans-section[data-v-445a5cad] {
    margin-top: 32px;
    margin-bottom: 48px;
}
.table-container[data-v-445a5cad] {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 32px;
}

/* Top-level Company Filter */
.top-company-filter[data-v-445a5cad] {
    padding: 20px 24px;
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
    border-bottom: 1px solid var(--border);
}
.top-company-filter .filter-item[data-v-445a5cad] {
    max-width: 300px;
}

/* Table Header */
.table-header[data-v-445a5cad] {
    padding: 20px 24px;
    border-bottom: 2px solid var(--border);
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}
.header-actions[data-v-445a5cad] {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
}
.btn-manual-entry[data-v-445a5cad],
.btn-companies[data-v-445a5cad],
.btn-filter[data-v-445a5cad] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 20px;
    background: white;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    height: 45px;
}
.btn-manual-entry[data-v-445a5cad] {
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
    color: white;
    border-color: #8b5cf6;
    box-shadow: 0 4px 12px rgba(139, 92, 246, 0.25);
}
.btn-manual-entry[data-v-445a5cad]:hover {
    background: linear-gradient(135deg, #7c3aed 0%, #6d28d9 100%);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(139, 92, 246, 0.35);
}
.btn-filter[data-v-445a5cad] {
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
    color: white;
    border: none;
    box-shadow: 0 4px 12px rgba(14, 165, 233, 0.25);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.btn-filter svg[data-v-445a5cad] {
    display: block;
    flex-shrink: 0;
}
.btn-filter-text[data-v-445a5cad] {
    font-size: 14px;
    font-weight: 600;
    color: white;
}
.btn-filter.active[data-v-445a5cad] {
    background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%);
    box-shadow: 0 4px 12px rgba(14, 165, 233, 0.35);
}
.btn-companies[data-v-445a5cad]:hover {
    border-color: var(--primary);
    color: var(--primary);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(14, 165, 233, 0.15);
}
.btn-filter[data-v-445a5cad]:hover {
    background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(14, 165, 233, 0.35);
}

/* Filters Row */
.filters-row[data-v-445a5cad] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 18px;
    padding: 24px;
    border-bottom: 2px solid var(--border);
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
}
.filter-item[data-v-445a5cad] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.filter-label[data-v-445a5cad] {
    font-size: 11px;
    font-weight: 700;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.8px;
}

/* Hide the standalone "Filter:" label if it exists */
.filters-row > .filter-label[data-v-445a5cad] {
    display: none;
}
.filter-select[data-v-445a5cad],
.filter-input[data-v-445a5cad] {
    padding: 10px 14px;
    border: 1px solid var(--border);
    border-radius: 8px;
    font-size: 14px;
    color: var(--text-primary);
    background: white;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-height: 42px;
}
.filter-select.active-filter[data-v-445a5cad],
.filter-input.active-filter[data-v-445a5cad] {
    border: 2px solid #0ea5e9;
    background: rgba(14, 165, 233, 0.05);
}
.filter-clear-container[data-v-445a5cad] {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.btn-clear-filters[data-v-445a5cad] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 10px 18px;
    border: 1px solid var(--border);
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    color: var(--text-secondary);
    background: white;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
    min-height: 42px;
}
.btn-clear-filters[data-v-445a5cad]:hover {
    border-color: #ef4444;
    color: white;
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(239, 68, 68, 0.3);
}
.btn-clear-filters svg[data-v-445a5cad] {
    flex-shrink: 0;
    font-size: 16px;
}
.filter-select[data-v-445a5cad]:hover,
.filter-input[data-v-445a5cad]:hover {
    border-color: var(--gray-light);
}
.filter-select[data-v-445a5cad]:focus,
.filter-input[data-v-445a5cad]:focus {
    outline: none;
    border-color: var(--primary);
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.filter-select option[data-v-445a5cad] {
    background: white;
    color: var(--text-primary);
}
.filter-select option[data-v-445a5cad]:checked,
.filter-select option[data-v-445a5cad]:hover,
.filter-select option[data-v-445a5cad]:focus {
    background: var(--primary-light) !important;
    color: var(--text-primary) !important;
}

/* Actions Row */
.actions-row[data-v-445a5cad] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 24px;
    border-bottom: 2px solid var(--border);
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    gap: 16px;
}
.sort-group[data-v-445a5cad] {
    display: flex;
    align-items: center;
    gap: 14px;
}
.type-selector-group[data-v-445a5cad] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}
.filter-export-group[data-v-445a5cad] {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-left: auto;
}
.actions-row .btn-filter[data-v-445a5cad] {
    margin-left: 0;
}
.sort-label[data-v-445a5cad] {
    font-size: 11px;
    font-weight: 700;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.8px;
}
.sort-select[data-v-445a5cad] {
    padding: 11px 16px;
    border: 2px solid var(--border);
    border-radius: 10px;
    font-size: 14px;
    font-weight: 500;
    color: var(--text-primary);
    background: white;
    cursor: pointer;
    min-width: 180px;
    transition: all 0.2s ease;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}
.sort-select[data-v-445a5cad]:hover {
    border-color: #0ea5e9;
    box-shadow: 0 2px 8px rgba(14, 165, 233, 0.15);
}
.sort-select[data-v-445a5cad]:focus {
    outline: none;
    border-color: #0ea5e9;
    box-shadow: 0 0 0 4px rgba(14, 165, 233, 0.15);
}
.export-actions[data-v-445a5cad] {
    display: flex;
    gap: 12px;
}
.btn-export-single[data-v-445a5cad] {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 12px 24px;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 700;
    color: white;
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
    height: 45px;
}
.btn-export-single[data-v-445a5cad]:hover {
    background: linear-gradient(135deg, #059669 0%, #047857 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(16, 185, 129, 0.4);
}
.btn-export[data-v-445a5cad] {
    padding: 10px 20px;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    color: white;
    cursor: pointer;
    transition: all 0.2s ease;
}
.btn-original[data-v-445a5cad] {
    background: #0ea5e9;
}
.btn-original[data-v-445a5cad]:hover {
    background: #0284c7;
}
.btn-pdf[data-v-445a5cad] {
    background: #ef4444;
}
.btn-pdf[data-v-445a5cad]:hover {
    background: #dc2626;
}
.btn-txt[data-v-445a5cad] {
    background: #64748b;
}
.btn-txt[data-v-445a5cad]:hover {
    background: #475569;
}
.btn-nap[data-v-445a5cad] {
    background: #8b5cf6;
}
.btn-nap[data-v-445a5cad]:hover {
    background: #7c3aed;
}
.btn-nap-alt[data-v-445a5cad] {
    background: #ec4899;
}
.btn-nap-alt[data-v-445a5cad]:hover {
    background: #db2777;
}
.btn-html[data-v-445a5cad] {
    background: #f59e0b;
}
.btn-html[data-v-445a5cad]:hover {
    background: #d97706;
}
.btn-xlsx[data-v-445a5cad] {
    background: #10b981;
}
.btn-xlsx[data-v-445a5cad]:hover {
    background: #059669;
}

/* Select Row */
.select-row[data-v-445a5cad] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-bottom: 1px solid var(--border);
    background: var(--bg-gray);
    min-height: 60px;
}
.select-all-section[data-v-445a5cad] {
    display: flex;
    align-items: center;
    gap: 8px;
}
.select-all-section input[type="checkbox"][data-v-445a5cad] {
    width: 16px;
    height: 16px;
    cursor: pointer;
}
.select-all-section label[data-v-445a5cad] {
    font-size: 13px;
    color: var(--text-secondary);
    cursor: pointer;
}
.bulk-actions[data-v-445a5cad] {
    display: flex;
    align-items: center;
    gap: 12px;
}
.selected-count[data-v-445a5cad] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    padding: 8px 12px;
    background: var(--white);
    border-radius: 6px;
}
.btn-bulk[data-v-445a5cad] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    border: none !important;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}
.btn-bulk-export[data-v-445a5cad] {
    background: #10b981 !important;
    background-color: #10b981 !important;
    color: white !important;
    border: none !important;
    outline: none !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}
.btn-bulk-export[data-v-445a5cad]:hover {
    background: #059669 !important;
    background-color: #059669 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15) !important;
}
.btn-bulk-archive[data-v-445a5cad] {
    background: #f59e0b !important;
    background-color: #f59e0b !important;
    color: white !important;
    border: none !important;
    outline: none !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}
.btn-bulk-archive[data-v-445a5cad]:hover {
    background: #d97706 !important;
    background-color: #d97706 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15) !important;
}
.btn-bulk-delete[data-v-445a5cad] {
    background: #ef4444 !important;
    background-color: #ef4444 !important;
    color: white !important;
    border: none !important;
    outline: none !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}
.btn-bulk-delete[data-v-445a5cad]:hover {
    background: #dc2626 !important;
    background-color: #dc2626 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15) !important;
}
.scan-count[data-v-445a5cad] {
    font-size: 13px;
    color: var(--text-secondary);
}

/* Pagination */
.pagination[data-v-445a5cad] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-top: 32px;
    padding-top: 32px;
    border-top: 1px solid var(--border);
}
.pagination-left[data-v-445a5cad] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
}
.pagination-center[data-v-445a5cad] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    flex: 1;
}
.pagination-right[data-v-445a5cad] {
    flex: 1;
}
.items-per-page-label[data-v-445a5cad] {
    font-size: 14px;
    color: var(--text-secondary);
    font-weight: 500;
}
.items-per-page-select[data-v-445a5cad] {
    padding: 8px 12px;
    background: white;
    border: 1px solid var(--border);
    border-radius: 8px;
    font-size: 14px;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
}
.items-per-page-select[data-v-445a5cad]:hover {
    border-color: var(--primary);
}
.items-per-page-select[data-v-445a5cad]:focus {
    outline: none;
    border-color: var(--primary);
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.pagination-btn[data-v-445a5cad] {
    padding: 10px 20px;
    background: white;
    border: 1px solid var(--border);
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
}
.pagination-btn[data-v-445a5cad]:hover:not(:disabled) {
    border-color: var(--primary);
    color: var(--primary);
}
.pagination-btn[data-v-445a5cad]:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}
.pagination-numbers[data-v-445a5cad] {
    display: flex;
    gap: 6px;
}
.pagination-number[data-v-445a5cad] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 1px solid var(--border);
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
}
.pagination-number[data-v-445a5cad]:hover {
    border-color: var(--primary);
    color: var(--primary);
}
.pagination-number.active[data-v-445a5cad] {
    background: var(--primary);
    border-color: var(--primary);
    color: white;
}
@media (max-width: 768px) {
.scans-section[data-v-445a5cad] {
        padding: 12px;
}
.qr-code-section[data-v-445a5cad] {
        flex-direction: column;
        padding: 16px;
}
.qr-code-card[data-v-445a5cad] {
        width: 160px;
        height: 160px;
}
.qr-info[data-v-445a5cad] {
        text-align: center;
}
.filters-section[data-v-445a5cad] {
        flex-direction: column;
}
.filters-grid[data-v-445a5cad] {
        grid-template-columns: 1fr;
}
.bulk-actions-bar[data-v-445a5cad] {
        flex-direction: column;
        gap: 12px;
}
.table-header[data-v-445a5cad] {
        padding: 12px;
}
.header-actions[data-v-445a5cad] {
        width: 100%;
        flex-wrap: wrap;
}
.btn-manual-entry[data-v-445a5cad],
    .btn-companies[data-v-445a5cad],
    .btn-filter[data-v-445a5cad] {
        flex: 1;
        min-width: calc(50% - 6px);
        padding: 10px 12px;
        font-size: 13px;
        gap: 6px;
        height: auto;
}
.filters-row[data-v-445a5cad] {
        grid-template-columns: 1fr;
        padding: 16px 12px;
        gap: 12px;
}
.filters-row .filter-item[data-v-445a5cad] {
        width: 100%;
}
.actions-row[data-v-445a5cad] {
        flex-direction: column;
        align-items: stretch;
        padding: 12px;
        gap: 12px;
}
.filter-export-group[data-v-445a5cad] {
        display: flex;
        gap: 12px;
        width: 100%;
}
.filter-export-group .btn-filter[data-v-445a5cad],
    .filter-export-group .export-actions[data-v-445a5cad] {
        flex: 1 1 50%;
        min-width: 0;
        max-width: 50%;
}
.filter-export-group .btn-filter[data-v-445a5cad] {
        margin-left: 0;
}
.filter-export-group .btn-export-single[data-v-445a5cad] {
        width: 100%;
}
.sort-group[data-v-445a5cad],
    .type-selector-group[data-v-445a5cad] {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
}
.sort-label[data-v-445a5cad] {
        font-size: 10px;
}
.sort-select[data-v-445a5cad] {
        width: 100%;
        min-width: auto;
        padding: 10px 12px;
        font-size: 13px;
}
.export-actions[data-v-445a5cad] {
        width: 100%;
}
.btn-export-single[data-v-445a5cad] {
        width: 100%;
        justify-content: center;
        padding: 10px 16px;
        font-size: 13px;
        height: auto;
}
.select-row[data-v-445a5cad] {
        flex-direction: column;
        align-items: stretch;
        padding: 12px;
        gap: 12px;
}
.select-all-section[data-v-445a5cad] {
        justify-content: center;
}
.select-all-section label[data-v-445a5cad] {
        font-size: 12px;
}
.bulk-actions[data-v-445a5cad] {
        flex-direction: column;
        width: 100%;
        gap: 8px;
}
.selected-count[data-v-445a5cad] {
        text-align: center;
}
.btn-bulk[data-v-445a5cad] {
        width: 100%;
        justify-content: center;
        font-size: 13px;
        padding: 8px 14px;
}
.scan-count[data-v-445a5cad] {
        text-align: center;
        font-size: 12px;
}
.bulk-actions-left[data-v-445a5cad],
    .bulk-actions-right[data-v-445a5cad] {
        width: 100%;
        justify-content: center;
}
.pagination[data-v-445a5cad] {
        flex-direction: column;
        gap: 16px;
}
.pagination-left[data-v-445a5cad],
    .pagination-center[data-v-445a5cad] {
        width: 100%;
        justify-content: center;
}
.pagination-numbers[data-v-445a5cad] {
        gap: 4px;
}
.pagination-number[data-v-445a5cad] {
        width: 36px;
        height: 36px;
        font-size: 12px;
}
.pagination-btn[data-v-445a5cad] {
        padding: 8px 12px;
        font-size: 12px;
}
.items-per-page-label[data-v-445a5cad] {
        font-size: 12px;
}
.items-per-page-select[data-v-445a5cad] {
        padding: 6px 10px;
        font-size: 12px;
}
}

/* Bulk Delete Modal */
.modal-overlay[data-v-445a5cad] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}
.modal-content[data-v-445a5cad] {
    background: white;
    border-radius: 12px;
    padding: 24px;
    max-width: 400px;
    width: 90%;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    position: relative;
}
.modal-header[data-v-445a5cad] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid #e2e8f0;
    position: relative;
}
.modal-header h3[data-v-445a5cad] {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    color: #1e293b;
    padding-right: 40px;
}
.modal-header .btn[data-v-445a5cad] {
    position: absolute;
    top: 0;
    right: 0;
    flex-shrink: 0;
}
.modal-actions[data-v-445a5cad] {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
}
.btn-confirm[data-v-445a5cad],
.btn-cancel[data-v-445a5cad] {
    padding: 10px 20px;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}
.btn-confirm[data-v-445a5cad] {
    background: #10b981;
    color: white;
}
.btn-confirm[data-v-445a5cad]:hover {
    background: #059669;
}
.btn-cancel[data-v-445a5cad] {
    background: #f1f5f9;
    color: #64748b;
}
.btn-cancel[data-v-445a5cad]:hover {
    background: #e2e8f0;
}

.language-selector[data-v-41e2741e] { position: relative; display: inline-block;
}
.lang-btn[data-v-41e2741e] {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 48px; height: 40px; padding: 0 14px;
  border: 1px solid rgba(31, 41, 51, 0.08); border-radius: 11px;
  background: #ffffff; color: #6b7280;
  font-size: 14px; font-weight: 700; cursor: pointer;
  transition: all 0.2s ease;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}
.lang-btn[data-v-41e2741e]:hover, .lang-btn.open[data-v-41e2741e] { border-color: #2b82f0; color: #2b82f0;
}
.lang-dropdown[data-v-41e2741e] {
  position: absolute; top: calc(100% + 8px); right: 0; z-index: 200;
  min-width: 160px; padding: 6px;
  background: #ffffff; border: 1px solid rgba(31, 41, 51, 0.08);
  border-radius: 14px; box-shadow: 0 24px 60px -34px rgba(31, 41, 51, 0.4);
  display: flex; flex-direction: column;
}
.lang-dropdown button[data-v-41e2741e] {
  text-align: left; padding: 10px 12px; border: none; background: none;
  border-radius: 9px; font-size: 14px; font-weight: 600; color: var(--ink, #1f2933);
  cursor: pointer; transition: background 0.15s ease, color 0.15s ease;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}
.lang-dropdown button[data-v-41e2741e]:hover { background: rgba(31, 41, 51, 0.05);
}
.lang-dropdown button.active[data-v-41e2741e] { background: rgba(43, 130, 240, 0.1); color: #2b82f0;
}

/* aligned with the public site design (light, violet accent, Plus Jakarta Sans) */
.profile-page[data-v-0b59adc6] {
  --violet: #2b82f0; --violet-hover: #1a6fdc; --ink: #1f2933; --muted: #6b7280;
  --line: rgba(31,41,51,0.08); --card: #ffffff; --pill: 999px;
  background: #f4f3f8; min-height: 100vh; padding: 44px 0 80px;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  letter-spacing: -0.01em; color: var(--ink);
}
.profile-page button[data-v-0b59adc6], .profile-page input[data-v-0b59adc6], .profile-page select[data-v-0b59adc6] { font-family: inherit;
}
.page-container[data-v-0b59adc6] { max-width: 900px; margin: 0 auto; padding: 0 24px;
}
.page-header[data-v-0b59adc6] { margin-bottom: 32px;
}
.page-title[data-v-0b59adc6] { font-size: clamp(28px, 3.6vw, 42px); font-weight: 700; letter-spacing: -0.035em; color: var(--ink); margin: 0 0 8px;
}
.page-subtitle[data-v-0b59adc6] { font-size: 16px; color: var(--muted); margin: 0;
}
.section-card[data-v-0b59adc6] { background: var(--card); border: 1px solid var(--line); border-radius: 22px; box-shadow: 0 24px 56px -42px rgba(31,41,51,0.3); margin-bottom: 22px; overflow: hidden;
}
.card-header[data-v-0b59adc6] { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 22px 28px; border-bottom: 1px solid var(--line);
}
.card-title[data-v-0b59adc6] { font-size: 18px; font-weight: 700; color: var(--ink); margin: 0; letter-spacing: -0.01em;
}
.card-content[data-v-0b59adc6] { padding: 26px 28px;
}
.info-grid[data-v-0b59adc6] { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px;
}
.info-item[data-v-0b59adc6] { display: flex; flex-direction: column; gap: 6px; align-items: flex-start;
}
.info-label[data-v-0b59adc6] { font-size: 12px; font-weight: 700; color: var(--muted); text-transform: uppercase; letter-spacing: 0.05em;
}
.info-value[data-v-0b59adc6] { font-size: 15.5px; font-weight: 600; color: var(--ink); margin: 0;
}
.subscription-info[data-v-0b59adc6] { display: flex; flex-direction: column; gap: 20px;
}
.sub-item[data-v-0b59adc6] { display: flex; flex-direction: column; gap: 6px;
}
.sub-label[data-v-0b59adc6] { font-size: 13px; font-weight: 600; color: var(--muted);
}
.sub-value[data-v-0b59adc6] { font-size: 16px; font-weight: 700; color: var(--ink); margin: 0;
}
.progress-bar[data-v-0b59adc6] { height: 10px; background: #eef1f6; border-radius: var(--pill); overflow: hidden; margin-top: 4px;
}
.progress-fill[data-v-0b59adc6] { height: 100%; background: linear-gradient(90deg, #5aa2ff, #2b82f0); border-radius: var(--pill); transition: width 0.5s ease;
}
.progress-fill-premium[data-v-0b59adc6] { background: linear-gradient(90deg, #a78bfa, #7c5cff);
}
.btn-primary[data-v-0b59adc6] { display: inline-flex; align-items: center; gap: 8px; padding: 10px 20px; border-radius: var(--pill); border: none; background: var(--violet); color: #fff; font-size: 14px; font-weight: 600; cursor: pointer; transition: all 0.2s ease; box-shadow: 0 14px 26px -14px rgba(43,130,240,0.6); text-decoration: none;
}
.btn-primary[data-v-0b59adc6]:hover { background: var(--violet-hover); transform: translateY(-2px);
}
.btn-secondary[data-v-0b59adc6] { display: inline-flex; align-items: center; gap: 8px; padding: 10px 20px; border-radius: var(--pill); border: 1px solid var(--line); background: #fff; color: var(--ink); font-size: 14px; font-weight: 600; cursor: pointer; transition: all 0.2s ease; text-decoration: none;
}
.btn-secondary[data-v-0b59adc6]:hover { border-color: var(--violet); color: var(--violet); transform: translateY(-2px);
}
.api-note[data-v-0b59adc6] { display: flex; gap: 14px; align-items: flex-start; background: rgba(43,130,240,0.06); border: 1px solid rgba(43,130,240,0.18); border-radius: 14px; padding: 16px 18px; margin-bottom: 22px; color: var(--violet);
}
.note-title[data-v-0b59adc6] { font-size: 14px; font-weight: 700; color: var(--ink); margin: 0 0 4px;
}
.note-text[data-v-0b59adc6] { font-size: 13.5px; color: var(--muted); line-height: 1.55; margin: 0;
}
.note-text code[data-v-0b59adc6] { background: rgba(43,130,240,0.1); color: var(--violet); padding: 1px 6px; border-radius: 5px; font-size: 12.5px;
}
.api-keys-list[data-v-0b59adc6] { display: flex; flex-direction: column; gap: 12px; margin-bottom: 22px;
}
.api-key-item[data-v-0b59adc6] { display: flex; align-items: center; justify-content: space-between; gap: 16px; background: #fbfbfd; border: 1px solid var(--line); border-radius: 14px; padding: 16px 18px;
}
.key-name[data-v-0b59adc6] { font-size: 14.5px; font-weight: 700; color: var(--ink);
}
.key-value[data-v-0b59adc6] { font-size: 13px; color: var(--muted); font-family: 'Fira Code', monospace; margin-top: 2px;
}
.key-meta[data-v-0b59adc6] { font-size: 12px; color: #9aa3af; margin-top: 4px;
}
.btn-delete[data-v-0b59adc6] { display: inline-flex; align-items: center; gap: 7px; padding: 9px 16px; border-radius: var(--pill); border: 1px solid rgba(239,68,68,0.25); background: #fff; color: #ef4444; font-size: 13px; font-weight: 600; cursor: pointer; transition: all 0.2s ease;
}
.btn-delete[data-v-0b59adc6]:hover { background: #ef4444; color: #fff; border-color: #ef4444;
}
.no-keys[data-v-0b59adc6] { color: var(--muted); font-size: 14px; padding: 8px 0 22px;
}
.api-example[data-v-0b59adc6] { background: #161d27; border-radius: 14px; padding: 18px 20px;
}
.example-title[data-v-0b59adc6] { font-size: 12.5px; font-weight: 600; color: rgba(255,255,255,0.6); margin: 0 0 10px;
}
.example-code[data-v-0b59adc6] { font-family: 'Fira Code', monospace; font-size: 12.5px; color: rgba(255,255,255,0.85); white-space: pre-wrap; word-break: break-all; margin: 0; line-height: 1.6;
}
.modal-overlay[data-v-0b59adc6] { position: fixed; inset: 0; background: rgba(15,23,42,0.5); display: flex; align-items: center; justify-content: center; z-index: 1000; padding: 20px; -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
}
.modal-content[data-v-0b59adc6] { background: #fff; border-radius: 22px; width: 100%; max-width: 460px; box-shadow: 0 40px 90px -40px rgba(31,41,51,0.5); overflow: hidden;
}
.modal-header[data-v-0b59adc6] { display: flex; align-items: center; justify-content: space-between; padding: 22px 26px; border-bottom: 1px solid var(--line);
}
.modal-header h3[data-v-0b59adc6] { font-size: 18px; font-weight: 700; color: var(--ink); margin: 0;
}
.btn-close[data-v-0b59adc6] { background: none; border: none; font-size: 26px; line-height: 1; color: var(--muted); cursor: pointer;
}
.btn-close[data-v-0b59adc6]:hover { color: var(--ink);
}
.modal-body[data-v-0b59adc6] { padding: 24px 26px;
}
.form-group[data-v-0b59adc6] { display: flex; flex-direction: column; gap: 8px;
}
.form-group label[data-v-0b59adc6] { font-size: 13.5px; font-weight: 600; color: var(--ink);
}
.form-input[data-v-0b59adc6] { width: 100%; padding: 12px 16px; border: 1px solid var(--line); border-radius: 12px; font-size: 15px; color: var(--ink); background: #fbfbfd; transition: all 0.2s ease;
}
.form-input[data-v-0b59adc6]:focus { outline: none; border-color: var(--violet); box-shadow: 0 0 0 3px rgba(43,130,240,0.12); background: #fff;
}
.key-created-alert[data-v-0b59adc6] { margin-top: 18px; background: #fffbeb; border: 1px solid #fde68a; border-radius: 12px; padding: 16px;
}
.alert-title[data-v-0b59adc6] { font-size: 14px; font-weight: 700; color: #b45309; margin: 0 0 4px;
}
.alert-text[data-v-0b59adc6] { font-size: 13px; color: #92700e; margin: 0 0 12px;
}
.key-display[data-v-0b59adc6] { display: flex; align-items: center; gap: 10px; background: #fff; border: 1px solid var(--line); border-radius: 10px; padding: 10px 12px;
}
.key-display code[data-v-0b59adc6] { flex: 1; font-family: 'Fira Code', monospace; font-size: 12.5px; color: var(--ink); word-break: break-all;
}
.btn-copy[data-v-0b59adc6] { padding: 7px 14px; border-radius: var(--pill); border: none; background: var(--violet); color: #fff; font-size: 12.5px; font-weight: 600; cursor: pointer; white-space: nowrap;
}
.btn-copy[data-v-0b59adc6]:hover { background: var(--violet-hover);
}
.modal-footer[data-v-0b59adc6] { display: flex; align-items: center; justify-content: flex-end; gap: 12px; padding: 18px 26px; border-top: 1px solid var(--line);
}
@media (max-width: 600px) {
.info-grid[data-v-0b59adc6] { grid-template-columns: 1fr;
}
.card-header[data-v-0b59adc6] { flex-direction: column; align-items: flex-start;
}
.api-key-item[data-v-0b59adc6] { flex-direction: column; align-items: flex-start;
}
}

/* matches the public Pricing page design */
.subscription-page[data-v-1fb98bc5] {
  --violet: #2b82f0; --violet-hover: #1a6fdc; --ink: #1f2933; --muted: #6b7280;
  --line: rgba(31,41,51,0.08); --card: #ffffff; --pill: 999px;
  background: #f4f3f8; min-height: 100vh; padding: 44px 0 80px;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  letter-spacing: -0.01em; color: var(--ink);
}
.subscription-page button[data-v-1fb98bc5], .subscription-page select[data-v-1fb98bc5] { font-family: inherit;
}
.page-container[data-v-1fb98bc5] { max-width: 1120px; margin: 0 auto; padding: 0 24px;
}
.page-header[data-v-1fb98bc5] { text-align: center; margin-bottom: 40px;
}
.page-title[data-v-1fb98bc5] { font-size: clamp(30px, 4vw, 48px); font-weight: 700; letter-spacing: -0.035em; color: var(--ink); margin: 0 0 10px;
}
.page-subtitle[data-v-1fb98bc5] { font-size: clamp(16px, 2vw, 19px); color: var(--muted); margin: 0;
}

/* current plan card */
.current-plan-card[data-v-1fb98bc5] { position: relative; background: var(--card); border: 1px solid var(--line); border-radius: 24px; padding: 32px 34px; box-shadow: 0 26px 60px -40px rgba(31,41,51,0.3); margin: 0 auto 40px; width: 100%; max-width: 1004px;
}
.plan-badge[data-v-1fb98bc5] { display: inline-block; font-size: 11px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; color: var(--violet); background: rgba(43,130,240,0.1); padding: 5px 12px; border-radius: var(--pill); margin-bottom: 14px;
}
.current-plan-title[data-v-1fb98bc5] { font-size: 26px; font-weight: 800; letter-spacing: -0.02em; color: var(--ink); margin: 0 0 4px;
}
.current-plan-subtitle[data-v-1fb98bc5] { color: var(--muted); font-size: 15px; margin: 0 0 24px;
}
.usage-header[data-v-1fb98bc5] { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px;
}
.usage-label[data-v-1fb98bc5] { font-size: 14px; font-weight: 600; color: var(--ink);
}
.usage-count[data-v-1fb98bc5] { font-size: 13px; color: var(--muted); font-weight: 600;
}
.progress-bar[data-v-1fb98bc5] { height: 10px; background: #eef1f6; border-radius: var(--pill); overflow: hidden;
}
.progress-fill[data-v-1fb98bc5] { height: 100%; background: linear-gradient(90deg, #5aa2ff, #2b82f0); border-radius: var(--pill); transition: width 0.5s ease;
}
.progress-fill-premium[data-v-1fb98bc5] { background: linear-gradient(90deg, #a78bfa, #7c5cff);
}
.usage-note[data-v-1fb98bc5] { font-size: 12.5px; color: var(--muted); margin: 14px 0 0;
}
.btn-manage-subscription[data-v-1fb98bc5] { display: inline-flex; align-items: center; gap: 9px; margin-top: 20px; padding: 11px 22px; border-radius: var(--pill); border: 1px solid var(--line); background: #fff; color: var(--ink); font-size: 14px; font-weight: 600; cursor: pointer; transition: all 0.2s ease;
}
.btn-manage-subscription[data-v-1fb98bc5]:hover { border-color: var(--violet); color: var(--violet); transform: translateY(-2px);
}

/* loading */
.loading-plans[data-v-1fb98bc5] { text-align: center; padding: 60px 0; color: var(--muted);
}
.spinner[data-v-1fb98bc5] { width: 36px; height: 36px; border: 3px solid #e5e9f0; border-top-color: var(--violet); border-radius: 50%; margin: 0 auto 16px; animation: spin-1fb98bc5 0.8s linear infinite;
}
@keyframes spin-1fb98bc5 {
to { transform: rotate(360deg);
}
}

/* plans grid (equal-height, centered like Pricing) */
.plans-grid[data-v-1fb98bc5] { display: flex; flex-wrap: wrap; justify-content: center; align-items: stretch; gap: 22px; margin-bottom: 64px;
}
.plan-card[data-v-1fb98bc5] { position: relative; background: var(--card); border: 1px solid var(--line); border-radius: 24px; padding: 32px 28px; box-shadow: 0 26px 60px -40px rgba(31,41,51,0.3); flex: 1 1 280px; max-width: 320px; display: flex; flex-direction: column; transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}
.plan-card[data-v-1fb98bc5]:hover { transform: translateY(-6px); box-shadow: 0 36px 80px -36px rgba(31,41,51,0.4);
}
.plan-card.featured[data-v-1fb98bc5] { border-color: var(--violet); box-shadow: 0 36px 80px -34px rgba(43,130,240,0.45);
}
.plan-card.current[data-v-1fb98bc5] { border-color: #10b981;
}
.featured-badge[data-v-1fb98bc5], .current-plan-badge[data-v-1fb98bc5] { position: absolute; top: -13px; left: 50%; transform: translateX(-50%); color: #fff; font-size: 12px; font-weight: 700; padding: 6px 16px; border-radius: var(--pill); white-space: nowrap;
}
.featured-badge[data-v-1fb98bc5] { background: var(--violet);
}
.current-plan-badge[data-v-1fb98bc5] { background: #10b981;
}
.plan-header[data-v-1fb98bc5] { margin-bottom: 20px;
}
.plan-name[data-v-1fb98bc5] { font-size: 21px; font-weight: 700; color: var(--ink); margin: 0 0 12px;
}
.plan-price[data-v-1fb98bc5] { display: flex; align-items: baseline; gap: 6px;
}
.price-amount[data-v-1fb98bc5] { font-size: 38px; font-weight: 800; letter-spacing: -0.03em; color: var(--ink); line-height: 1;
}
.price-period[data-v-1fb98bc5] { font-size: 14px; color: var(--muted); font-weight: 500;
}
.plan-features[data-v-1fb98bc5] { list-style: none; margin: 0 0 22px; padding: 22px 0 0; border-top: 1px solid var(--line); display: flex; flex-direction: column; gap: 12px; flex: 1;
}
.feature-item[data-v-1fb98bc5] { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; color: var(--ink); line-height: 1.45;
}
.feature-icon[data-v-1fb98bc5] { color: var(--violet); margin-top: 2px; flex-shrink: 0;
}
.plan-btn[data-v-1fb98bc5] { width: 100%; padding: 13px 22px; border-radius: var(--pill); border: 1px solid var(--line); background: #fff; color: var(--ink); font-size: 15px; font-weight: 600; cursor: pointer; transition: all 0.2s ease; margin-top: auto;
}
.plan-btn[data-v-1fb98bc5]:hover { border-color: var(--violet); color: var(--violet); transform: translateY(-2px);
}
.plan-btn.featured[data-v-1fb98bc5] { background: var(--violet); color: #fff; border-color: var(--violet); box-shadow: 0 16px 30px -16px rgba(43,130,240,0.6);
}
.plan-btn.featured[data-v-1fb98bc5]:hover { background: var(--violet-hover); color: #fff; transform: translateY(-2px);
}
.plan-btn.current[data-v-1fb98bc5] { background: #f1f3f6; color: var(--muted); cursor: default; border-color: transparent;
}
.plan-btn.current[data-v-1fb98bc5]:hover { transform: none; color: var(--muted); border-color: transparent;
}

/* faq (like Pricing) */
.faq-section[data-v-1fb98bc5] { max-width: 880px; margin: 0 auto;
}
.faq-title[data-v-1fb98bc5] { text-align: center; font-size: clamp(26px, 3.4vw, 40px); font-weight: 700; letter-spacing: -0.03em; color: var(--ink); margin: 0 0 36px;
}
.faq-grid[data-v-1fb98bc5] { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px;
}
.faq-item[data-v-1fb98bc5] { background: var(--card); border: 1px solid var(--line); border-radius: 18px; padding: 24px 26px; box-shadow: 0 18px 44px -34px rgba(31,41,51,0.3);
}
.faq-question[data-v-1fb98bc5] { font-size: 16px; font-weight: 700; color: var(--ink); margin: 0 0 8px; letter-spacing: -0.01em;
}
.faq-answer[data-v-1fb98bc5] { font-size: 14px; color: var(--muted); line-height: 1.6; margin: 0;
}
@media (max-width: 768px) {
.faq-grid[data-v-1fb98bc5] { grid-template-columns: 1fr;
}
.plan-card[data-v-1fb98bc5] { max-width: 100%;
}
}
.vue-magnifier__magnifier{position:relative;display:inline-block;line-height:0}.vue-magnifier__magnifying-glass{position:absolute;z-index:1;background:#fff no-repeat;border:solid #ebebeb;box-shadow:2px 2px 3px #0000004d;opacity:0;transition:opacity .3s;pointer-events:none}.vue-magnifier__magnifying-glass.vue-magnifier__circle{border-radius:50%}.vue-magnifier__magnifying-glass.vue-magnifier__visible{opacity:1}

.modal-enter-active[data-v-54f3a4ca],
.modal-leave-active[data-v-54f3a4ca] {
  transition: opacity 0.3s ease;
}
.modal-enter-from[data-v-54f3a4ca],
.modal-leave-to[data-v-54f3a4ca] {
  opacity: 0;
}
.modal-enter-active .relative[data-v-54f3a4ca],
.modal-leave-active .relative[data-v-54f3a4ca] {
  transition: transform 0.3s ease;
}
.modal-enter-from .relative[data-v-54f3a4ca],
.modal-leave-to .relative[data-v-54f3a4ca] {
  transform: scale(0.9);
}

.scan-details-amount-container[data-v-f81cd9c7] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}
.scan-details-amount-container > div[data-v-f81cd9c7] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.scan-details-amount-input[data-v-f81cd9c7],
.scan-details-total-input[data-v-f81cd9c7] {
    border: 1px solid #d1d5db;
    border-radius: 6px;
    padding: 6px 10px;
    font-size: 16px;
    font-weight: 600;
    text-align: right;
    width: 120px;
    background: white;
    transition: all 0.2s ease;
}
@media (max-width: 1023px) {
.scan-details-amount-input[data-v-f81cd9c7],
    .scan-details-total-input[data-v-f81cd9c7] {
        width: 100%;
        font-size: 14px;
        padding: 6px 8px;
        height: 33px;
        box-sizing: border-box;
}
}
@media (min-width: 1024px) and (max-width: 1300px) {
.scan-details-amount-input[data-v-f81cd9c7],
    .scan-details-total-input[data-v-f81cd9c7] {
        width: 90px;
        font-size: 14px;
}
}
@media (min-width: 1301px) {
.scan-details-amount-input[data-v-f81cd9c7],
    .scan-details-total-input[data-v-f81cd9c7] {
        width: 180px;
}
}
.scan-details-amount-input[data-v-f81cd9c7]:focus,
.scan-details-total-input[data-v-f81cd9c7]:focus {
    outline: none;
    border-color: #0ea5e9;
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.scan-details-total-input[data-v-f81cd9c7] {
    font-size: 18px;
    font-weight: 700;
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.scan-details-total-input[data-v-f81cd9c7]::placeholder {
    background: none;
    -webkit-text-fill-color: #9ca3af;
    color: #9ca3af;
}
.scan-details-currency[data-v-f81cd9c7] {
    font-size: 14px;
    font-weight: 600;
    color: #374151;
    white-space: nowrap;
}

/* Mobile Top Navigation */
@media (max-width: 768px) {
.flex-shrink-0.h-16[data-v-f81cd9c7] {
        height: auto;
        min-height: 3.5rem;
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
        flex-wrap: wrap;
        gap: 0.5rem;
}
.flex-shrink-0.h-16 > button[data-v-f81cd9c7],
    .flex-shrink-0.h-16 > div[data-v-f81cd9c7] {
        flex-shrink: 0;
}

    /* Back button takes full width on very small screens */
@media (max-width: 380px) {
.flex-shrink-0.h-16[data-v-f81cd9c7] {
            justify-content: center;
}
.flex-shrink-0.h-16 > button[data-v-f81cd9c7]:first-child {
            order: 1;
}
.flex-shrink-0.h-16 > div[data-v-f81cd9c7]:nth-child(2) {
            order: 2;
}
.flex-shrink-0.h-16 > div[data-v-f81cd9c7]:nth-child(3) {
            order: 3;
}
}
.select-seller-btn[data-v-f81cd9c7] {
        padding: 4px 8px !important;
        min-width: 32px !important;
        height: 32px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border-radius: 4px !important;
        background-color: #4a90e2 !important;
        color: white !important;
        border: none !important;
        cursor: pointer !important;
        transition: background-color 0.2s !important;
}
.select-seller-btn svg[data-v-f81cd9c7] {
        color: white !important;
}
.select-seller-btn[data-v-f81cd9c7]:hover {
        background-color: #357abd !important;
}
}

.modal-overlay[data-v-c81fe71d] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1001;
  padding: 20px;
}
.modal-content[data-v-c81fe71d] {
  background: white;
  border-radius: 16px;
  max-width: 500px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}
.modal-header[data-v-c81fe71d] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px;
  border-bottom: 1px solid var(--border);
}
.modal-header h2[data-v-c81fe71d] {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}
.btn-close[data-v-c81fe71d] {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  border-radius: 8px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-close[data-v-c81fe71d]:hover {
  background: var(--bg-gray);
  color: var(--text-primary);
}
.modal-body[data-v-c81fe71d] {
  padding: 24px;
}
.info-box[data-v-c81fe71d],
.warning-box[data-v-c81fe71d] {
  display: flex;
  gap: 12px;
  padding: 16px;
  border-radius: 8px;
  margin-bottom: 20px;
}
.info-box[data-v-c81fe71d] {
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  color: #1e40af;
}
.warning-box[data-v-c81fe71d] {
  background: #fef2f2;
  border: 1px solid #fecaca;
  color: #991b1b;
}
.info-box svg[data-v-c81fe71d],
.warning-box svg[data-v-c81fe71d] {
  flex-shrink: 0;
  margin-top: 2px;
}
.info-box p[data-v-c81fe71d],
.warning-box p[data-v-c81fe71d] {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}
.form-group[data-v-c81fe71d] {
  margin-bottom: 20px;
}
.form-group label[data-v-c81fe71d] {
  display: block;
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  margin-bottom: 8px;
}
.required[data-v-c81fe71d] {
  color: var(--danger);
}
.modal-footer[data-v-c81fe71d] {
  display: flex;
  gap: 12px;
  justify-content: flex-end;
  padding: 24px;
  border-top: 1px solid var(--border);
}
.btn-secondary[data-v-c81fe71d],
.btn-danger[data-v-c81fe71d] {
  padding: 12px 24px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-secondary[data-v-c81fe71d] {
  background: transparent;
  border: 1px solid var(--border);
  color: var(--text-primary);
}
.btn-secondary[data-v-c81fe71d]:hover {
  background: var(--bg-gray);
}
.btn-danger[data-v-c81fe71d] {
  background: #dc2626;
  border: none;
  color: white;
}
.btn-danger[data-v-c81fe71d]:hover:not(:disabled) {
  background: #b91c1c;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(220, 38, 38, 0.3);
}
.btn-danger[data-v-c81fe71d]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.modal-overlay[data-v-378a4d06] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  padding: 20px;
}
.modal-content[data-v-378a4d06] {
  background: white;
  border-radius: 16px;
  max-width: 500px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}
.modal-header[data-v-378a4d06] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px;
  border-bottom: 1px solid var(--border);
}
.modal-header h2[data-v-378a4d06] {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}
.btn-close[data-v-378a4d06] {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  border-radius: 8px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-close[data-v-378a4d06]:hover {
  background: var(--bg-gray);
  color: var(--text-primary);
}
.modal-body[data-v-378a4d06] {
  padding: 24px;
}
.form-group[data-v-378a4d06] {
  margin-bottom: 20px;
}
.form-group label[data-v-378a4d06] {
  display: block;
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  margin-bottom: 8px;
}
.required[data-v-378a4d06] {
  color: var(--danger);
}
.form-group input[type="text"][data-v-378a4d06],
.form-group input[type="email"][data-v-378a4d06],
.form-group input[type="tel"][data-v-378a4d06] {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid var(--border);
  border-radius: 8px;
  font-size: 14px;
  transition: all 0.2s ease;
}
.form-group input[data-v-378a4d06]:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px var(--primary-light);
}
.form-row[data-v-378a4d06] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

/* iOS-style toggle, matches the rest of the app */
.form-group-toggle[data-v-378a4d06] {
  display: flex;
  align-items: center;
  gap: 12px;
}
.toggle[data-v-378a4d06] {
  position: relative;
  display: inline-block;
  width: 36px;
  height: 20px;
  flex-shrink: 0;
  cursor: pointer;
  margin: 0;
}
.toggle input[data-v-378a4d06] {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}
.toggle-track[data-v-378a4d06] {
  position: absolute;
  inset: 0;
  background: #cbd5e1;
  border-radius: 20px;
  transition: background 0.2s ease;
  cursor: pointer;
}
.toggle-track[data-v-378a4d06]::before {
  content: '';
  position: absolute;
  height: 14px;
  width: 14px;
  left: 3px;
  bottom: 3px;
  background: white;
  border-radius: 50%;
  transition: transform 0.2s ease;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}
.toggle input:checked + .toggle-track[data-v-378a4d06] {
  background: var(--primary);
}
.toggle input:checked + .toggle-track[data-v-378a4d06]::before {
  transform: translateX(16px);
}
.toggle input:focus-visible + .toggle-track[data-v-378a4d06] {
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.15);
}
.toggle-text[data-v-378a4d06] {
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  user-select: none;
}
.modal-footer[data-v-378a4d06] {
  display: flex;
  gap: 12px;
  justify-content: flex-end;
  padding-top: 20px;
  border-top: 1px solid var(--border);
}
.btn-secondary[data-v-378a4d06],
.btn-primary[data-v-378a4d06] {
  padding: 12px 24px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-secondary[data-v-378a4d06] {
  background: transparent;
  border: 1px solid var(--border);
  color: var(--text-primary);
}
.btn-secondary[data-v-378a4d06]:hover {
  background: var(--bg-gray);
}
.btn-primary[data-v-378a4d06] {
  background: var(--primary);
  border: none;
  color: white;
}
.btn-primary[data-v-378a4d06]:hover:not(:disabled) {
  background: var(--primary-hover);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.btn-primary[data-v-378a4d06]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* Alias Names Styling */
.alias-names-container[data-v-378a4d06] {
  width: 100%;
}
.alias-tags[data-v-378a4d06] {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: white;
  min-height: 42px;
  align-items: center;
}
.alias-tags[data-v-378a4d06]:focus-within {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.alias-tag[data-v-378a4d06] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 6px;
  font-size: 13px;
  color: #1e40af;
  font-weight: 500;
}
.alias-remove[data-v-378a4d06] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  padding: 0;
  border: none;
  background: transparent;
  color: #3b82f6;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  border-radius: 3px;
  transition: all 0.15s ease;
}
.alias-remove[data-v-378a4d06]:hover {
  background: #dbeafe;
  color: #1e40af;
}
.alias-input[data-v-378a4d06] {
  flex: 1;
  min-width: 150px;
  border: none;
  outline: none;
  padding: 4px 6px;
  font-size: 14px;
  color: var(--text-primary);
}
.alias-input[data-v-378a4d06]::placeholder {
  color: var(--text-light);
}
.field-hint[data-v-378a4d06] {
  margin: 6px 0 0 0;
  font-size: 12px;
  color: var(--text-secondary);
}
@media (max-width: 640px) {
.form-row[data-v-378a4d06] {
    grid-template-columns: 1fr;
}
}

/* Dropzone Section */
.dropzone[data-v-378a4d06] {
  background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
  border-radius: 16px;
  padding: 48px 32px;
  margin-bottom: 32px;
  border: 3px dashed #0ea5e9;
  transition: all 0.3s ease;
  cursor: pointer;
  min-height: 280px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.dropzone.dragover[data-v-378a4d06] {
  background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
  border-color: var(--primary);
  border-width: 3px;
  box-shadow: 0 8px 24px rgba(14, 165, 233, 0.2);
  transform: scale(1.02);
}
.dropzone.uploading[data-v-378a4d06] {
  background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
  border-color: #f59e0b;
  cursor: wait;
}
.dropzone.has-file[data-v-378a4d06] {
  background: linear-gradient(135deg, #d1fae5 0%, #a7f3d0 100%);
  border-color: #10b981;
}
.dropzone-empty[data-v-378a4d06],
.dropzone-extracting[data-v-378a4d06],
.dropzone-success[data-v-378a4d06] {
  text-align: center;
  width: 100%;
}
.upload-icon[data-v-378a4d06],
.success-icon[data-v-378a4d06] {
  margin: 0 auto 20px;
  color: var(--primary);
}
.dropzone.has-file .success-icon[data-v-378a4d06] {
  color: #10b981;
}
.dropzone h3[data-v-378a4d06] {
  font-size: 20px;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0 0 8px 0;
}
.dropzone p[data-v-378a4d06] {
  font-size: 14px;
  color: var(--text-secondary);
  margin: 0 0 24px 0;
}
.dropzone-actions[data-v-378a4d06] {
  display: flex;
  gap: 16px;
  justify-content: center;
  margin-bottom: 20px;
}
.btn-browse[data-v-378a4d06],
.btn-camera[data-v-378a4d06] {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 24px;
  background: white;
  border: 2px solid var(--primary);
  border-radius: 10px;
  color: var(--primary);
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.25s ease;
  box-shadow: 0 2px 8px rgba(14, 165, 233, 0.1);
}
.btn-browse[data-v-378a4d06]:hover,
.btn-camera[data-v-378a4d06]:hover {
  background: var(--primary);
  color: white;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.25);
}
.btn-browse[data-v-378a4d06]:active,
.btn-camera[data-v-378a4d06]:active {
  transform: translateY(0);
}
.btn-upload-another[data-v-378a4d06] {
  margin-top: 16px;
  padding: 10px 24px;
  background: var(--primary);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-upload-another[data-v-378a4d06]:hover {
  background: #0284c7;
  transform: translateY(-1px);
}
.file-types[data-v-378a4d06] {
  font-size: 12px;
  color: var(--text-tertiary);
  margin-top: 16px;
}
.dropzone-extracting .spinner-large[data-v-378a4d06] {
  width: 48px;
  height: 48px;
  border: 4px solid #fde68a;
  border-top-color: #f59e0b;
  border-radius: 50%;
  animation: spin-378a4d06 1s linear infinite;
  margin: 0 auto 20px;
}
.extracting-text[data-v-378a4d06] {
  font-size: 16px;
  font-weight: 600;
  color: #f59e0b;
}
.file-name[data-v-378a4d06] {
  font-size: 16px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 16px 0 8px;
  word-break: break-word;
}
.success-message[data-v-378a4d06] {
  font-size: 14px;
  font-weight: 500;
  color: #10b981;
}
@keyframes spin-378a4d06 {
to { transform: rotate(360deg);
}
}

/* Legacy Upload Section (can be removed if not used elsewhere) */
.upload-section[data-v-378a4d06] {
  background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
  border-radius: 12px;
  padding: 24px;
  margin-bottom: 24px;
  border: 2px dashed #0ea5e9;
}
.upload-info[data-v-378a4d06] {
  text-align: center;
  margin-bottom: 20px;
}
.upload-info svg[data-v-378a4d06] {
  color: var(--primary);
  margin-bottom: 12px;
}
.upload-info h3[data-v-378a4d06] {
  font-size: 16px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0 0 4px 0;
}
.upload-info p[data-v-378a4d06] {
  font-size: 13px;
  color: var(--text-secondary);
  margin: 0;
}
.upload-actions[data-v-378a4d06] {
  display: flex;
  gap: 12px;
  justify-content: center;
}
.btn-upload[data-v-378a4d06],
.btn-camera[data-v-378a4d06] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  background: white;
  border: 2px solid var(--primary);
  border-radius: 8px;
  color: var(--primary);
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-upload[data-v-378a4d06]:hover:not(:disabled),
.btn-camera[data-v-378a4d06]:hover:not(:disabled) {
  background: var(--primary);
  color: white;
}
.btn-upload[data-v-378a4d06]:disabled,
.btn-camera[data-v-378a4d06]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.extracting-state[data-v-378a4d06] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-top: 16px;
  padding: 12px;
  background: white;
  border-radius: 8px;
  color: var(--primary);
  font-size: 14px;
  font-weight: 500;
}
.error-message[data-v-378a4d06] {
  background: #fee;
  border: 1px solid #fcc;
  border-radius: 8px;
  padding: 12px 16px;
  margin-bottom: 20px;
  color: #c33;
  font-size: 14px;
  line-height: 1.5;
}
.spinner-small[data-v-378a4d06] {
  width: 20px;
  height: 20px;
  border: 2px solid #e0f2fe;
  border-top-color: var(--primary);
  border-radius: 50%;
  animation: spin-378a4d06 0.8s linear infinite;
}
@keyframes spin-378a4d06 {
to { transform: rotate(360deg);
}
}
.uploaded-file[data-v-378a4d06] {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  padding: 12px;
  background: white;
  border-radius: 8px;
  font-size: 14px;
  color: var(--text-primary);
}
.uploaded-file span[data-v-378a4d06] {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.btn-clear[data-v-378a4d06] {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  border-radius: 4px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-clear[data-v-378a4d06]:hover {
  background: var(--bg-gray);
  color: var(--danger);
}
.divider[data-v-378a4d06] {
  position: relative;
  text-align: center;
  margin: 24px 0;
}
.divider[data-v-378a4d06]::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 1px;
  background: var(--border);
}
.divider span[data-v-378a4d06] {
  position: relative;
  display: inline-block;
  padding: 0 16px;
  background: white;
  color: var(--text-secondary);
  font-size: 13px;
  font-weight: 500;
}

.modal-overlay[data-v-71a115c2] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  padding: 20px;
}
.modal-content[data-v-71a115c2] {
  background: white;
  border-radius: 16px;
  max-width: 500px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}
.modal-header[data-v-71a115c2] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px;
  border-bottom: 1px solid var(--border);
}
.modal-header h2[data-v-71a115c2] {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}
.btn-close[data-v-71a115c2] {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  border-radius: 8px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-close[data-v-71a115c2]:hover {
  background: var(--bg-gray);
  color: var(--text-primary);
}
.modal-body[data-v-71a115c2] {
  padding: 24px;
}
.form-group[data-v-71a115c2] {
  margin-bottom: 20px;
}
.form-group label[data-v-71a115c2] {
  display: block;
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  margin-bottom: 8px;
}
.required[data-v-71a115c2] {
  color: var(--danger);
}
.form-group input[type="text"][data-v-71a115c2],
.form-group input[type="email"][data-v-71a115c2],
.form-group input[type="tel"][data-v-71a115c2] {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid var(--border);
  border-radius: 8px;
  font-size: 14px;
  transition: all 0.2s ease;
}
.form-group input[data-v-71a115c2]:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px var(--primary-light);
}

/* iOS-style toggle, matches the rest of the app */
.form-group-toggle[data-v-71a115c2] {
  display: flex;
  align-items: center;
  gap: 12px;
}
.toggle[data-v-71a115c2] {
  position: relative;
  display: inline-block;
  width: 36px;
  height: 20px;
  flex-shrink: 0;
  cursor: pointer;
  margin: 0;
}
.toggle input[data-v-71a115c2] {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}
.toggle-track[data-v-71a115c2] {
  position: absolute;
  inset: 0;
  background: #cbd5e1;
  border-radius: 20px;
  transition: background 0.2s ease;
  cursor: pointer;
}
.toggle-track[data-v-71a115c2]::before {
  content: '';
  position: absolute;
  height: 14px;
  width: 14px;
  left: 3px;
  bottom: 3px;
  background: white;
  border-radius: 50%;
  transition: transform 0.2s ease;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}
.toggle input:checked + .toggle-track[data-v-71a115c2] {
  background: var(--primary);
}
.toggle input:checked + .toggle-track[data-v-71a115c2]::before {
  transform: translateX(16px);
}
.toggle input:focus-visible + .toggle-track[data-v-71a115c2] {
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.15);
}
.toggle-text[data-v-71a115c2] {
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  user-select: none;
}
.modal-footer[data-v-71a115c2] {
  display: flex;
  gap: 12px;
  justify-content: flex-end;
  padding-top: 20px;
  border-top: 1px solid var(--border);
}
.btn-secondary[data-v-71a115c2],
.btn-primary[data-v-71a115c2] {
  padding: 12px 24px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-secondary[data-v-71a115c2] {
  background: transparent;
  border: 1px solid var(--border);
  color: var(--text-primary);
}
.btn-secondary[data-v-71a115c2]:hover {
  background: var(--bg-gray);
}
.btn-primary[data-v-71a115c2] {
  background: var(--primary);
  border: none;
  color: white;
}
.btn-primary[data-v-71a115c2]:hover:not(:disabled) {
  background: var(--primary-hover);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.btn-primary[data-v-71a115c2]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.alias-names-container[data-v-71a115c2] {
  width: 100%;
}
.alias-tags[data-v-71a115c2] {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: white;
  min-height: 42px;
  align-items: center;
}
.alias-tags[data-v-71a115c2]:focus-within {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.alias-tag[data-v-71a115c2] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 6px;
  font-size: 13px;
  color: #1e40af;
  font-weight: 500;
}
.alias-remove[data-v-71a115c2] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  padding: 0;
  border: none;
  background: transparent;
  color: #3b82f6;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  border-radius: 3px;
  transition: all 0.15s ease;
}
.alias-remove[data-v-71a115c2]:hover {
  background: #dbeafe;
  color: #1e40af;
}
.alias-input[data-v-71a115c2] {
  flex: 1;
  min-width: 150px;
  border: none;
  outline: none;
  padding: 4px 6px;
  font-size: 14px;
  color: var(--text-primary);
}
.alias-input[data-v-71a115c2]::placeholder {
  color: var(--text-light);
}
.field-hint[data-v-71a115c2] {
  margin: 6px 0 0 0;
  font-size: 12px;
  color: var(--text-secondary);
}
.error-message[data-v-71a115c2] {
  background: #fee;
  border: 1px solid #fcc;
  border-radius: 8px;
  padding: 12px 16px;
  margin-bottom: 20px;
  color: #c33;
  font-size: 14px;
  line-height: 1.5;
}

.modal-overlay[data-v-98284619] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10000;
  padding: 20px;
  overflow-y: auto;
}
.modal-container[data-v-98284619] {
  background: white;
  border-radius: 16px;
  width: 100%;
  padding: 0;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  position: relative;
}
.modal-header[data-v-98284619] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px;
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
}
.modal-header-content[data-v-98284619] {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
}
.modal-header h2[data-v-98284619] {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}
.form-group[data-v-98284619] {
  margin-bottom: 20px;
}
.form-label[data-v-98284619] {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: 8px;
}
.required[data-v-98284619] {
  color: #ef4444;
  margin-left: 4px;
}
.form-hint[data-v-98284619] {
  margin-top: 6px;
  font-size: 13px;
  color: var(--text-secondary);
  min-height: 20px;
  line-height: 1.4;
}
.checkbox-label[data-v-98284619] {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  color: var(--text-primary);
  cursor: pointer;
  user-select: none;
}
.checkbox-label input[type="checkbox"][data-v-98284619] {
  width: 18px;
  height: 18px;
  cursor: pointer;
  accent-color: var(--primary);
}
.checkbox-label input[type="checkbox"][data-v-98284619]:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
.radio-group[data-v-98284619] {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.radio-group-horizontal[data-v-98284619] {
  flex-direction: row;
  gap: 12px;
}
.radio-group-horizontal .radio-label[data-v-98284619] {
  flex: 1;
}
.radio-label[data-v-98284619] {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  color: var(--text-primary);
  cursor: pointer;
  user-select: none;
  padding: 12px;
  border: 2px solid var(--border);
  border-radius: 8px;
  transition: all 0.2s ease;
  min-height: 46px;
}
.radio-label[data-v-98284619]:hover {
  border-color: var(--primary);
  background-color: rgba(14, 165, 233, 0.05);
}
.radio-label input[type="radio"][data-v-98284619] {
  width: 18px;
  height: 18px;
  cursor: pointer;
  accent-color: var(--primary);
}
.radio-label input[type="radio"]:checked + span[data-v-98284619] {
  font-weight: 600;
  color: var(--primary);
}
.radio-label input[type="radio"][data-v-98284619]:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
.form-input[data-v-98284619] {
  width: 100%;
  padding: 10px 12px;
  border: 2px solid var(--border);
  border-radius: 8px;
  font-size: 14px;
  color: var(--text-primary);
  transition: all 0.2s ease;
  font-family: monospace;
}
.form-input[data-v-98284619]:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.form-input[data-v-98284619]:disabled {
  background-color: var(--bg-gray);
  cursor: not-allowed;
  opacity: 0.6;
}
.btn-primary[data-v-98284619] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  background: var(--primary);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-primary[data-v-98284619]:hover:not(:disabled) {
  background: var(--primary-hover);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.btn-primary[data-v-98284619]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.btn-secondary[data-v-98284619] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  background: white;
  color: var(--text-primary);
  border: 2px solid var(--border);
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-secondary[data-v-98284619]:hover {
  border-color: var(--primary);
  color: var(--primary);
}
.btn-small[data-v-98284619] {
  padding: 6px 12px;
  font-size: 13px;
}
.btn-icon[data-v-98284619] {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--bg-gray);
  border: 1px solid var(--border);
  border-radius: 6px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
  margin: 0;
  padding: 0;
  flex-shrink: 0;
}
.btn-icon[data-v-98284619]:hover {
  background: var(--primary-light);
  border-color: var(--primary);
  color: var(--primary);
}
.bulk-import-modal[data-v-98284619] {
  max-width: 900px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
  margin: auto;
}
.modal-body[data-v-98284619] {
  padding: 24px;
}
.import-instructions[data-v-98284619] {
  display: flex;
  gap: 16px;
  padding: 16px;
  background: linear-gradient(135deg, #dbeafe 0%, #f0f9ff 100%);
  border-left: 4px solid var(--primary);
  border-radius: 8px;
  margin-bottom: 24px;
}
.instruction-icon[data-v-98284619] {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--primary);
  color: white;
  border-radius: 50%;
  font-size: 20px;
}
.instruction-text h4[data-v-98284619] {
  font-size: 15px;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0 0 8px 0;
}
.instruction-text ul[data-v-98284619] {
  margin: 0;
  padding-left: 20px;
  color: var(--text-secondary);
  font-size: 13px;
  line-height: 1.6;
}
.instruction-text li[data-v-98284619] {
  margin-bottom: 4px;
}
.form-textarea[data-v-98284619] {
  width: 100%;
  min-height: 280px;
  max-height: 280px;
  height: 280px;
  padding: 12px;
  border: 2px solid var(--border);
  border-radius: 8px;
  font-family: 'Courier New', monospace;
  font-size: 13px;
  line-height: 1.5;
  resize: vertical;
  transition: all 0.2s ease;
}
.form-textarea[data-v-98284619]:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.form-textarea[data-v-98284619]:disabled {
  background: #f5f5f5;
  cursor: not-allowed;
}
.action-buttons[data-v-98284619] {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-top: 20px;
}
.btn-large[data-v-98284619] {
  padding: 14px 32px;
  font-size: 15px;
  font-weight: 600;
}
.btn-spinner[data-v-98284619] {
  width: 18px;
  height: 18px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-top-color: white;
  border-radius: 50%;
  animation: spin-98284619 0.6s linear infinite;
  display: inline-block;
  margin-right: 8px;
}
@keyframes spin-98284619 {
to { transform: rotate(360deg);
}
}
.error-message[data-v-98284619] {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: #fef2f2;
  border-left: 4px solid #ef4444;
  border-radius: 8px;
  color: #dc2626;
  margin-top: 16px;
  font-size: 14px;
}
.info-message[data-v-98284619] {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: #eff6ff;
  border-left: 4px solid #3b82f6;
  border-radius: 8px;
  color: #1e40af;
  margin-top: 12px;
  font-size: 14px;
}
.info-message svg[data-v-98284619] {
  color: #3b82f6;
  font-size: 16px;
  flex-shrink: 0;
}
.parsed-results[data-v-98284619] {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 2px dashed var(--border);
}
.results-header[data-v-98284619] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
}
.results-header h3[data-v-98284619] {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0;
}
.results-header h3 svg[data-v-98284619] {
  color: #10b981;
}
.parsed-table-wrapper[data-v-98284619] {
  max-height: 300px;
  overflow-y: auto;
  border: 2px solid var(--border);
  border-radius: 8px;
  margin-bottom: 20px;
}
.parsed-table[data-v-98284619] {
  width: 100%;
  border-collapse: collapse;
}
.parsed-table thead[data-v-98284619] {
  position: sticky;
  top: 0;
  background: var(--bg-gray);
  z-index: 1;
}
.parsed-table th[data-v-98284619] {
  padding: 12px;
  text-align: left;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--text-secondary);
  border-bottom: 2px solid var(--border);
}
.parsed-table td[data-v-98284619] {
  padding: 12px;
  border-bottom: 1px solid var(--border);
  font-size: 14px;
}
.parsed-table tbody tr[data-v-98284619]:hover {
  background: #f8fafc;
}
.code-cell[data-v-98284619] {
  font-family: 'Courier New', monospace;
  font-weight: 700;
  color: var(--primary);
}
.type-badge[data-v-98284619] {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
}
.type-expense[data-v-98284619] {
  background: #fef3c7;
  color: #d97706;
}
.type-revenue[data-v-98284619] {
  background: #d1fae5;
  color: #059669;
}
.type-asset[data-v-98284619] {
  background: #dbeafe;
  color: #0284c7;
}
.type-liability[data-v-98284619] {
  background: #fecaca;
  color: #dc2626;
}
.status-badge[data-v-98284619] {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 600;
}
.status-badge.active[data-v-98284619] {
  background: #d1fae5;
  color: #059669;
}
.import-result[data-v-98284619] {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px;
  border-radius: 8px;
  margin-top: 16px;
  font-size: 14px;
}
.import-result.success[data-v-98284619] {
  background: #d1fae5;
  border-left: 4px solid #10b981;
  color: #065f46;
}
.import-result.warning[data-v-98284619] {
  background: #fef3c7;
  border-left: 4px solid #f59e0b;
  color: #92400e;
}
.import-result.error[data-v-98284619] {
  background: #fef2f2;
  border-left: 4px solid #ef4444;
  color: #dc2626;
}
.import-result svg[data-v-98284619] {
  flex-shrink: 0;
  font-size: 20px;
  margin-top: 2px;
}
.result-message[data-v-98284619] {
  font-weight: 600;
  margin: 0 0 8px 0;
}
.error-list[data-v-98284619] {
  margin: 0;
  padding-left: 20px;
  font-size: 13px;
  line-height: 1.6;
}
.error-list li[data-v-98284619] {
  margin-bottom: 4px;
}

/* Excel Upload Styles */
.file-upload-area[data-v-98284619] {
  border: 2px dashed var(--border);
  border-radius: 12px;
  padding: 32px;
  text-align: center;
  transition: all 0.3s ease;
  background: var(--bg-gray);
  cursor: pointer;
}
.file-upload-area[data-v-98284619]:hover {
  border-color: var(--primary);
  background: rgba(14, 165, 233, 0.05);
}
.file-upload-area.drag-over[data-v-98284619] {
  border-color: var(--primary);
  background: rgba(14, 165, 233, 0.1);
  transform: scale(1.02);
}
.upload-prompt[data-v-98284619] {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.upload-icon[data-v-98284619] {
  font-size: 48px;
  color: #10b981;
  margin-bottom: 8px;
}
.upload-text[data-v-98284619] {
  font-size: 16px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}
.upload-hint[data-v-98284619] {
  font-size: 13px;
  color: var(--text-secondary);
  margin: 0;
}
.file-selected[data-v-98284619] {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  background: white;
  border-radius: 8px;
  text-align: left;
}
.file-icon[data-v-98284619] {
  font-size: 36px;
  color: #10b981;
  flex-shrink: 0;
}
.file-info[data-v-98284619] {
  flex: 1;
  min-width: 0;
}
.file-name[data-v-98284619] {
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0 0 4px 0;
  word-break: break-word;
}
.file-size[data-v-98284619] {
  font-size: 13px;
  color: var(--text-secondary);
  margin: 0;
}
.btn-remove-file[data-v-98284619] {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fef2f2;
  border: none;
  border-radius: 6px;
  color: #dc2626;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.btn-remove-file[data-v-98284619]:hover {
  background: #fee2e2;
  transform: scale(1.1);
}

/* Column Mapping Styles */
.column-mapping[data-v-98284619] {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 20px;
  background: var(--bg-gray);
  border-radius: 10px;
  margin-bottom: 20px;
}
.mapping-row[data-v-98284619] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.mapping-row label[data-v-98284619] {
  font-size: 13px;
  font-weight: 600;
  color: var(--text-primary);
}

/* Data Preview Styles */
.data-preview[data-v-98284619] {
  margin-top: 24px;
  padding: 20px;
  background: white;
  border: 2px solid var(--border);
  border-radius: 10px;
}
.data-preview h4[data-v-98284619] {
  font-size: 14px;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0 0 16px 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
.preview-table-wrapper[data-v-98284619] {
  max-height: 250px;
  overflow: auto;
  border: 1px solid var(--border);
  border-radius: 8px;
}
.preview-table[data-v-98284619] {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
.preview-table thead[data-v-98284619] {
  position: sticky;
  top: 0;
  background: var(--bg-gray);
  z-index: 1;
}
.preview-table th[data-v-98284619] {
  padding: 10px 12px;
  text-align: left;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--text-secondary);
  border-bottom: 2px solid var(--border);
  white-space: nowrap;
}
.preview-table td[data-v-98284619] {
  padding: 10px 12px;
  border-bottom: 1px solid var(--border);
  color: var(--text-primary);
}
.preview-table tbody tr[data-v-98284619]:hover {
  background: #f8fafc;
}
.preview-table .code-cell[data-v-98284619] {
  font-family: 'Courier New', monospace;
  font-weight: 600;
  color: var(--primary);
}

/* Column Mapping Help */
.column-mapping-help[data-v-98284619] {
  margin-top: 16px;
  padding: 16px;
  background: #eff6ff;
  border-left: 4px solid var(--primary);
  border-radius: 8px;
}
.column-mapping-help p[data-v-98284619] {
  margin: 0 0 12px 0;
  font-size: 14px;
  color: var(--text-primary);
}
.column-mapping-help ul[data-v-98284619] {
  margin: 0;
  padding-left: 20px;
  list-style: disc;
}
.column-mapping-help li[data-v-98284619] {
  font-size: 13px;
  line-height: 1.8;
  color: var(--text-secondary);
  margin-bottom: 6px;
}
.column-mapping-help strong[data-v-98284619] {
  color: var(--text-primary);
  font-weight: 600;
}

.modal-overlay[data-v-ebbfebfe] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: flex-start;
  justify-content: center;
  z-index: 10000;
  padding: 20px;
  overflow-y: auto;
}
.modal-container[data-v-ebbfebfe] {
  background: white;
  border-radius: 16px;
  width: 100%;
  padding: 0;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  position: relative;
}
.bulk-import-modal[data-v-ebbfebfe] {
  max-width: 900px;
  margin: auto;
}
.modal-header[data-v-ebbfebfe] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px;
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
}
.modal-header-content[data-v-ebbfebfe] {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
}
.modal-header h2[data-v-ebbfebfe] {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}
.modal-body[data-v-ebbfebfe] {
  padding: 24px;
}
.form-group[data-v-ebbfebfe] {
  margin-bottom: 20px;
}
.form-label[data-v-ebbfebfe] {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: 8px;
}
.required[data-v-ebbfebfe] {
  color: #ef4444;
  margin-left: 4px;
}
.form-input[data-v-ebbfebfe] {
  width: 100%;
  padding: 10px 12px;
  border: 2px solid var(--border);
  border-radius: 8px;
  font-size: 14px;
  color: var(--text-primary);
  background: white;
  transition: all 0.2s ease;
}
.form-input[data-v-ebbfebfe]:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.import-instructions[data-v-ebbfebfe] {
  display: flex;
  gap: 16px;
  padding: 16px;
  background: linear-gradient(135deg, #dbeafe 0%, #f0f9ff 100%);
  border-left: 4px solid var(--primary);
  border-radius: 8px;
  margin-bottom: 24px;
}
.instruction-icon[data-v-ebbfebfe] {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--primary);
  color: white;
  border-radius: 50%;
  font-size: 20px;
}
.instruction-text h4[data-v-ebbfebfe] {
  font-size: 15px;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0 0 8px 0;
}
.instruction-text ul[data-v-ebbfebfe] {
  margin: 0;
  padding-left: 20px;
  color: var(--text-secondary);
  font-size: 13px;
  line-height: 1.6;
}
.instruction-text li[data-v-ebbfebfe] {
  margin-bottom: 4px;
}

/* Checkboxes / options */
.radio-group[data-v-ebbfebfe] {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.radio-label[data-v-ebbfebfe] {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 14px;
  color: var(--text-primary);
  cursor: pointer;
  user-select: none;
  padding: 12px;
  border: 2px solid var(--border);
  border-radius: 8px;
  transition: all 0.2s ease;
}
.radio-label[data-v-ebbfebfe]:hover {
  border-color: var(--primary);
  background-color: rgba(14, 165, 233, 0.05);
}
.radio-label input[type="checkbox"][data-v-ebbfebfe] {
  width: 18px;
  height: 18px;
  cursor: pointer;
  accent-color: var(--primary);
  margin-top: 2px;
}
.radio-label span[data-v-ebbfebfe] {
  display: block;
  line-height: 1.4;
}
.radio-label small[data-v-ebbfebfe] {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  font-weight: normal;
  color: var(--text-secondary);
}

/* File upload */
.file-upload-area[data-v-ebbfebfe] {
  border: 2px dashed var(--border);
  border-radius: 12px;
  padding: 32px;
  text-align: center;
  transition: all 0.3s ease;
  background: var(--bg-gray);
  cursor: pointer;
}
.file-upload-area[data-v-ebbfebfe]:hover {
  border-color: var(--primary);
  background: rgba(14, 165, 233, 0.05);
}
.file-upload-area.drag-over[data-v-ebbfebfe] {
  border-color: var(--primary);
  background: rgba(14, 165, 233, 0.1);
  transform: scale(1.02);
}
.upload-prompt[data-v-ebbfebfe] {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.upload-icon[data-v-ebbfebfe] {
  font-size: 48px;
  color: #10b981;
  margin-bottom: 8px;
}
.upload-text[data-v-ebbfebfe] {
  font-size: 16px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}
.upload-hint[data-v-ebbfebfe] {
  font-size: 13px;
  color: var(--text-secondary);
  margin: 0;
}
.file-selected[data-v-ebbfebfe] {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  background: white;
  border-radius: 8px;
  text-align: left;
  cursor: default;
}
.file-icon[data-v-ebbfebfe] {
  font-size: 36px;
  color: #10b981;
  flex-shrink: 0;
}
.file-info[data-v-ebbfebfe] {
  flex: 1;
  min-width: 0;
}
.file-name[data-v-ebbfebfe] {
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0 0 4px 0;
  word-break: break-word;
}
.file-size[data-v-ebbfebfe] {
  font-size: 13px;
  color: var(--text-secondary);
  margin: 0;
}
.btn-remove-file[data-v-ebbfebfe] {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fef2f2;
  border: none;
  border-radius: 6px;
  color: #dc2626;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.btn-remove-file[data-v-ebbfebfe]:hover {
  background: #fee2e2;
  transform: scale(1.1);
}

/* Column mapping */
.column-mapping[data-v-ebbfebfe] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  padding: 20px;
  background: var(--bg-gray);
  border-radius: 10px;
  margin-bottom: 20px;
}
.mapping-row[data-v-ebbfebfe] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.mapping-row label[data-v-ebbfebfe] {
  font-size: 13px;
  font-weight: 600;
  color: var(--text-primary);
}
.column-mapping-help[data-v-ebbfebfe] {
  margin-bottom: 16px;
  padding: 16px;
  background: #eff6ff;
  border-left: 4px solid var(--primary);
  border-radius: 8px;
}
.column-mapping-help p[data-v-ebbfebfe] {
  margin: 0 0 12px 0;
  font-size: 14px;
  color: var(--text-primary);
}
.column-mapping-help ul[data-v-ebbfebfe] {
  margin: 0;
  padding-left: 20px;
  list-style: disc;
}
.column-mapping-help li[data-v-ebbfebfe] {
  font-size: 13px;
  line-height: 1.8;
  color: var(--text-secondary);
  margin-bottom: 6px;
}
.column-mapping-help strong[data-v-ebbfebfe] {
  color: var(--text-primary);
  font-weight: 600;
}

/* Data Preview */
.data-preview[data-v-ebbfebfe] {
  margin-top: 24px;
  padding: 20px;
  background: white;
  border: 2px solid var(--border);
  border-radius: 10px;
}
.data-preview h4[data-v-ebbfebfe] {
  font-size: 14px;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0 0 16px 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
.preview-table-wrapper[data-v-ebbfebfe] {
  max-height: 250px;
  overflow: auto;
  border: 1px solid var(--border);
  border-radius: 8px;
}
.preview-table[data-v-ebbfebfe] {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
.preview-table thead[data-v-ebbfebfe] {
  position: sticky;
  top: 0;
  background: var(--bg-gray);
  z-index: 1;
}
.preview-table th[data-v-ebbfebfe] {
  padding: 10px 12px;
  text-align: left;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--text-secondary);
  border-bottom: 2px solid var(--border);
  white-space: nowrap;
}
.preview-table td[data-v-ebbfebfe] {
  padding: 10px 12px;
  border-bottom: 1px solid var(--border);
  color: var(--text-primary);
}
.preview-table tbody tr[data-v-ebbfebfe]:hover {
  background: #f8fafc;
}

/* Buttons */
.action-buttons[data-v-ebbfebfe] {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-top: 20px;
}
.btn-primary[data-v-ebbfebfe] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  background: var(--primary);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-primary[data-v-ebbfebfe]:hover:not(:disabled) {
  background: var(--primary-hover);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.btn-primary[data-v-ebbfebfe]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.btn-secondary[data-v-ebbfebfe] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  background: white;
  color: var(--text-primary);
  border: 2px solid var(--border);
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-secondary[data-v-ebbfebfe]:hover {
  border-color: var(--primary);
  color: var(--primary);
}
.btn-large[data-v-ebbfebfe] {
  padding: 14px 32px;
  font-size: 15px;
  font-weight: 600;
}
.btn-icon[data-v-ebbfebfe] {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--bg-gray);
  border: 1px solid var(--border);
  border-radius: 6px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
  margin: 0;
  padding: 0;
  flex-shrink: 0;
}
.btn-icon[data-v-ebbfebfe]:hover {
  background: var(--primary-light);
  border-color: var(--primary);
  color: var(--primary);
}

/* Error / spinner / result */
.error-message[data-v-ebbfebfe] {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: #fef2f2;
  border-left: 4px solid #ef4444;
  border-radius: 8px;
  color: #dc2626;
  margin-top: 16px;
  font-size: 14px;
}
.import-progress[data-v-ebbfebfe] {
  text-align: center;
  padding: 40px 20px;
}
.spinner[data-v-ebbfebfe] {
  border: 3px solid #f3f3f3;
  border-top: 3px solid var(--primary);
  border-radius: 50%;
  width: 40px;
  height: 40px;
  animation: spin-ebbfebfe 1s linear infinite;
  margin: 0 auto 16px;
}
@keyframes spin-ebbfebfe {
0% { transform: rotate(0deg);
}
100% { transform: rotate(360deg);
}
}
.import-result[data-v-ebbfebfe] {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px;
  border-radius: 8px;
  margin-top: 16px;
  font-size: 14px;
}
.import-result.success[data-v-ebbfebfe] {
  background: #d1fae5;
  border-left: 4px solid #10b981;
  color: #065f46;
}
.import-result.error[data-v-ebbfebfe] {
  background: #fef2f2;
  border-left: 4px solid #ef4444;
  color: #dc2626;
}
.import-result svg[data-v-ebbfebfe] {
  flex-shrink: 0;
  font-size: 20px;
  margin-top: 2px;
}
.result-message[data-v-ebbfebfe] {
  font-weight: 600;
  margin: 0 0 8px 0;
}
.result-stats[data-v-ebbfebfe] {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 8px;
}
.stat-chip[data-v-ebbfebfe] {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 600;
}
.stat-chip.success[data-v-ebbfebfe] { background: #d1fae5; color: #059669;
}
.stat-chip.info[data-v-ebbfebfe] { background: #dbeafe; color: #0284c7;
}
.stat-chip.warning[data-v-ebbfebfe] { background: #fef3c7; color: #d97706;
}
.stat-chip.error[data-v-ebbfebfe] { background: #fecaca; color: #dc2626;
}
.error-list[data-v-ebbfebfe] {
  margin: 8px 0 0 0;
  padding-left: 20px;
  font-size: 13px;
  line-height: 1.6;
  max-height: 200px;
  overflow-y: auto;
}
.error-list li[data-v-ebbfebfe] {
  margin-bottom: 4px;
}
@media (max-width: 640px) {
.column-mapping[data-v-ebbfebfe] {
    grid-template-columns: 1fr;
}
}

.modal-overlay[data-v-671fab8d] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: flex-start;
  justify-content: center;
  z-index: 10000;
  padding: 20px;
  overflow-y: auto;
}
.modal-container[data-v-671fab8d] {
  background: white;
  border-radius: 16px;
  width: 100%;
  padding: 0;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  position: relative;
}
.bulk-import-modal[data-v-671fab8d] {
  max-width: 900px;
  margin: auto;
}
.modal-header[data-v-671fab8d] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px;
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
}
.modal-header-content[data-v-671fab8d] {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
}
.modal-header h2[data-v-671fab8d] {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}
.modal-body[data-v-671fab8d] {
  padding: 24px;
}
.form-group[data-v-671fab8d] {
  margin-bottom: 20px;
}
.form-label[data-v-671fab8d] {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: 8px;
}
.required[data-v-671fab8d] {
  color: #ef4444;
  margin-left: 4px;
}
.form-input[data-v-671fab8d] {
  width: 100%;
  padding: 10px 12px;
  border: 2px solid var(--border);
  border-radius: 8px;
  font-size: 14px;
  color: var(--text-primary);
  background: white;
  transition: all 0.2s ease;
}
.form-input[data-v-671fab8d]:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.import-instructions[data-v-671fab8d] {
  display: flex;
  gap: 16px;
  padding: 16px;
  background: linear-gradient(135deg, #dbeafe 0%, #f0f9ff 100%);
  border-left: 4px solid var(--primary);
  border-radius: 8px;
  margin-bottom: 24px;
}
.instruction-icon[data-v-671fab8d] {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--primary);
  color: white;
  border-radius: 50%;
  font-size: 20px;
}
.instruction-text h4[data-v-671fab8d] {
  font-size: 15px;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0 0 8px 0;
}
.instruction-text ul[data-v-671fab8d] {
  margin: 0;
  padding-left: 20px;
  color: var(--text-secondary);
  font-size: 13px;
  line-height: 1.6;
}
.instruction-text li[data-v-671fab8d] {
  margin-bottom: 4px;
}
.radio-group[data-v-671fab8d] {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.radio-label[data-v-671fab8d] {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 14px;
  color: var(--text-primary);
  cursor: pointer;
  user-select: none;
  padding: 12px;
  border: 2px solid var(--border);
  border-radius: 8px;
  transition: all 0.2s ease;
}
.radio-label[data-v-671fab8d]:hover {
  border-color: var(--primary);
  background-color: rgba(14, 165, 233, 0.05);
}
.radio-label input[type="checkbox"][data-v-671fab8d] {
  width: 18px;
  height: 18px;
  cursor: pointer;
  accent-color: var(--primary);
  margin-top: 2px;
}
.radio-label span[data-v-671fab8d] {
  display: block;
  line-height: 1.4;
}
.radio-label small[data-v-671fab8d] {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  font-weight: normal;
  color: var(--text-secondary);
}
.file-upload-area[data-v-671fab8d] {
  border: 2px dashed var(--border);
  border-radius: 12px;
  padding: 32px;
  text-align: center;
  transition: all 0.3s ease;
  background: var(--bg-gray);
  cursor: pointer;
}
.file-upload-area[data-v-671fab8d]:hover {
  border-color: var(--primary);
  background: rgba(14, 165, 233, 0.05);
}
.file-upload-area.drag-over[data-v-671fab8d] {
  border-color: var(--primary);
  background: rgba(14, 165, 233, 0.1);
  transform: scale(1.02);
}
.upload-prompt[data-v-671fab8d] {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.upload-icon[data-v-671fab8d] {
  font-size: 48px;
  color: #10b981;
  margin-bottom: 8px;
}
.upload-text[data-v-671fab8d] {
  font-size: 16px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}
.upload-hint[data-v-671fab8d] {
  font-size: 13px;
  color: var(--text-secondary);
  margin: 0;
}
.file-selected[data-v-671fab8d] {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  background: white;
  border-radius: 8px;
  text-align: left;
  cursor: default;
}
.file-icon[data-v-671fab8d] {
  font-size: 36px;
  color: #10b981;
  flex-shrink: 0;
}
.file-info[data-v-671fab8d] {
  flex: 1;
  min-width: 0;
}
.file-name[data-v-671fab8d] {
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0 0 4px 0;
  word-break: break-word;
}
.file-size[data-v-671fab8d] {
  font-size: 13px;
  color: var(--text-secondary);
  margin: 0;
}
.btn-remove-file[data-v-671fab8d] {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fef2f2;
  border: none;
  border-radius: 6px;
  color: #dc2626;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.btn-remove-file[data-v-671fab8d]:hover {
  background: #fee2e2;
  transform: scale(1.1);
}
.column-mapping[data-v-671fab8d] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  padding: 20px;
  background: var(--bg-gray);
  border-radius: 10px;
  margin-bottom: 20px;
}
.mapping-row[data-v-671fab8d] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.mapping-row label[data-v-671fab8d] {
  font-size: 13px;
  font-weight: 600;
  color: var(--text-primary);
}
.data-preview[data-v-671fab8d] {
  margin-top: 24px;
  padding: 20px;
  background: white;
  border: 2px solid var(--border);
  border-radius: 10px;
}
.data-preview h4[data-v-671fab8d] {
  font-size: 14px;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0 0 16px 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
.preview-table-wrapper[data-v-671fab8d] {
  max-height: 250px;
  overflow: auto;
  border: 1px solid var(--border);
  border-radius: 8px;
}
.preview-table[data-v-671fab8d] {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
.preview-table thead[data-v-671fab8d] {
  position: sticky;
  top: 0;
  background: var(--bg-gray);
  z-index: 1;
}
.preview-table th[data-v-671fab8d] {
  padding: 10px 12px;
  text-align: left;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--text-secondary);
  border-bottom: 2px solid var(--border);
  white-space: nowrap;
}
.preview-table td[data-v-671fab8d] {
  padding: 10px 12px;
  border-bottom: 1px solid var(--border);
  color: var(--text-primary);
}
.preview-table tbody tr[data-v-671fab8d]:hover {
  background: #f8fafc;
}
.action-buttons[data-v-671fab8d] {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-top: 20px;
}
.btn-primary[data-v-671fab8d] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  background: var(--primary);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-primary[data-v-671fab8d]:hover:not(:disabled) {
  background: var(--primary-hover);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.btn-primary[data-v-671fab8d]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.btn-secondary[data-v-671fab8d] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  background: white;
  color: var(--text-primary);
  border: 2px solid var(--border);
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-secondary[data-v-671fab8d]:hover {
  border-color: var(--primary);
  color: var(--primary);
}
.btn-large[data-v-671fab8d] {
  padding: 14px 32px;
  font-size: 15px;
  font-weight: 600;
}
.btn-icon[data-v-671fab8d] {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--bg-gray);
  border: 1px solid var(--border);
  border-radius: 6px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
  margin: 0;
  padding: 0;
  flex-shrink: 0;
}
.btn-icon[data-v-671fab8d]:hover {
  background: var(--primary-light);
  border-color: var(--primary);
  color: var(--primary);
}
.error-message[data-v-671fab8d] {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: #fef2f2;
  border-left: 4px solid #ef4444;
  border-radius: 8px;
  color: #dc2626;
  margin-top: 16px;
  font-size: 14px;
}
.import-progress[data-v-671fab8d] {
  text-align: center;
  padding: 40px 20px;
}
.spinner[data-v-671fab8d] {
  border: 3px solid #f3f3f3;
  border-top: 3px solid var(--primary);
  border-radius: 50%;
  width: 40px;
  height: 40px;
  animation: spin-671fab8d 1s linear infinite;
  margin: 0 auto 16px;
}
@keyframes spin-671fab8d {
0% { transform: rotate(0deg);
}
100% { transform: rotate(360deg);
}
}
.import-result[data-v-671fab8d] {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px;
  border-radius: 8px;
  margin-top: 16px;
  font-size: 14px;
}
.import-result.success[data-v-671fab8d] {
  background: #d1fae5;
  border-left: 4px solid #10b981;
  color: #065f46;
}
.import-result.error[data-v-671fab8d] {
  background: #fef2f2;
  border-left: 4px solid #ef4444;
  color: #dc2626;
}
.import-result svg[data-v-671fab8d] {
  flex-shrink: 0;
  font-size: 20px;
  margin-top: 2px;
}
.result-message[data-v-671fab8d] {
  font-weight: 600;
  margin: 0 0 8px 0;
}
.result-stats[data-v-671fab8d] {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 8px;
}
.stat-chip[data-v-671fab8d] {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 600;
}
.stat-chip.success[data-v-671fab8d] { background: #d1fae5; color: #059669;
}
.stat-chip.info[data-v-671fab8d] { background: #dbeafe; color: #0284c7;
}
.stat-chip.warning[data-v-671fab8d] { background: #fef3c7; color: #d97706;
}
.stat-chip.error[data-v-671fab8d] { background: #fecaca; color: #dc2626;
}
.error-list[data-v-671fab8d] {
  margin: 8px 0 0 0;
  padding-left: 20px;
  font-size: 13px;
  line-height: 1.6;
  max-height: 200px;
  overflow-y: auto;
}
.error-list li[data-v-671fab8d] {
  margin-bottom: 4px;
}
@media (max-width: 640px) {
.column-mapping[data-v-671fab8d] {
    grid-template-columns: 1fr;
}
}

.modal-overlay[data-v-40d4b00a] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  padding: 20px;
}
.modal-content-large[data-v-40d4b00a] {
  background: white;
  border-radius: 16px;
  max-width: 900px;
  width: 100%;
  max-height: 90vh;
  overflow: hidden;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
  display: flex;
  flex-direction: column;
}
.modal-header[data-v-40d4b00a] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px;
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
}
.modal-header-content[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
}
.modal-header h2[data-v-40d4b00a] {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}
.tab-navigation[data-v-40d4b00a] {
  display: flex;
  gap: 8px;
  padding: 0 24px;
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
}
.tab-button[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  background: transparent;
  border: none;
  border-bottom: 3px solid transparent;
  color: var(--text-secondary);
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
}
.tab-button[data-v-40d4b00a]:hover {
  color: var(--text-primary);
  background: var(--bg-gray);
}
.tab-button.active[data-v-40d4b00a] {
  color: var(--primary);
  border-bottom-color: var(--primary);
}
.modal-body[data-v-40d4b00a] {
  padding: 24px;
  overflow-y: auto;
  flex: 1;
}
.tab-content[data-v-40d4b00a] {
  animation: fadeIn-40d4b00a 0.2s ease;
}
@keyframes fadeIn-40d4b00a {
from { opacity: 0;
}
to { opacity: 1;
}
}
.tab-header[data-v-40d4b00a] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  gap: 16px;
}
.tab-header h3[data-v-40d4b00a] {
  font-size: 18px;
  font-weight: 600;
  margin: 0;
}
.header-actions[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
  justify-content: flex-end;
  flex-wrap: wrap;
}
.filter-container[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  gap: 8px;
}
.filter-label[data-v-40d4b00a] {
  font-size: 14px;
  font-weight: 500;
  color: var(--text-secondary);
  white-space: nowrap;
}
.search-box[data-v-40d4b00a] {
  position: relative;
  flex: 0 1 300px;
  min-width: 200px;
}
.search-icon[data-v-40d4b00a] {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--text-secondary);
  font-size: 14px;
  pointer-events: none;
}
.search-input[data-v-40d4b00a] {
  width: 100%;
  padding: 10px 12px 10px 36px;
  border: 1px solid var(--border);
  border-radius: 8px;
  font-size: 14px;
  transition: all 0.2s ease;
}
.search-input[data-v-40d4b00a]:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px var(--primary-light);
}
.search-input[data-v-40d4b00a]::placeholder {
  color: var(--text-secondary);
}
.form-group[data-v-40d4b00a] {
  margin-bottom: 20px;
}
.form-group label[data-v-40d4b00a] {
  display: block;
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  margin-bottom: 8px;
}
.required[data-v-40d4b00a] {
  color: var(--danger);
}
.form-group input[type="text"][data-v-40d4b00a],
.form-group input[type="email"][data-v-40d4b00a],
.form-group input[type="tel"][data-v-40d4b00a],
.form-group input[type="url"][data-v-40d4b00a] {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid var(--border);
  border-radius: 8px;
  font-size: 14px;
  transition: all 0.2s ease;
}
.form-group input[data-v-40d4b00a]:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.form-row[data-v-40d4b00a] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.checkbox-label[data-v-40d4b00a] {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  margin-top: 12px;
  margin-bottom: 8px;
}
.checkbox-label input[type="checkbox"][data-v-40d4b00a] {
  width: 18px;
  height: 18px;
  cursor: pointer;
  flex-shrink: 0;
  margin: 0;
}
.checkbox-label span[data-v-40d4b00a] {
  font-size: 14px;
  line-height: 18px;
  user-select: none;
  margin-left: 2px;
}
.toggle-label[data-v-40d4b00a] {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  margin-top: 12px;
  margin-bottom: 8px;
  font-size: 14px;
  width: auto;
}
.form-group-toggle[data-v-40d4b00a] {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
}
.toggle-text[data-v-40d4b00a] {
  font-size: 14px;
  line-height: 20px;
  user-select: none;
}
.toggle[data-v-40d4b00a] {
  position: relative;
  display: inline-block;
  width: 36px;
  height: 20px;
  flex-shrink: 0;
  cursor: pointer;
}
.toggle input[data-v-40d4b00a] {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}
.toggle-track[data-v-40d4b00a] {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #ccc;
  border-radius: 10px;
  transition: background 0.2s;
}
.toggle-track[data-v-40d4b00a]::before {
  content: '';
  position: absolute;
  width: 14px;
  height: 14px;
  left: 3px;
  bottom: 3px;
  background: white;
  border-radius: 50%;
  transition: transform 0.2s;
}
.toggle input:checked + .toggle-track[data-v-40d4b00a] {
  background: var(--primary, #4f8cff);
}
.toggle input:checked + .toggle-track[data-v-40d4b00a]::before {
  transform: translateX(16px);
}
.alias-names-container[data-v-40d4b00a] {
  width: 100%;
}
.alias-tags[data-v-40d4b00a] {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: white;
  min-height: 42px;
  align-items: center;
}
.alias-tag[data-v-40d4b00a] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 6px;
  font-size: 13px;
  color: #1e40af;
  font-weight: 500;
}
.alias-remove[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  padding: 0;
  border: none;
  background: transparent;
  color: #3b82f6;
  font-size: 18px;
  cursor: pointer;
  border-radius: 3px;
}
.alias-remove[data-v-40d4b00a]:hover {
  background: #dbeafe;
  color: #1e40af;
}
.alias-input[data-v-40d4b00a] {
  flex: 1;
  min-width: 150px;
  border: none;
  outline: none;
  padding: 4px 6px;
  font-size: 14px;
}
.field-hint[data-v-40d4b00a] {
  margin: 6px 0 0 0;
  font-size: 12px;
  color: var(--text-secondary);
}
.form-section-title[data-v-40d4b00a] {
  margin: 32px 0 20px 0;
  padding-top: 24px;
  border-top: 1px solid var(--border);
}
.form-section-title h4[data-v-40d4b00a] {
  font-size: 16px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0 0 4px 0;
}
.form-section-title .section-hint[data-v-40d4b00a] {
  font-size: 13px;
  color: var(--text-secondary);
  margin: 0;
}
.help-text[data-v-40d4b00a] {
  font-size: 14px;
  color: #6b7280;
  margin-top: 8px;
}
.font-semibold[data-v-40d4b00a] {
  font-weight: 600;
}
.modal-footer[data-v-40d4b00a] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 20px;
  border-top: 1px solid var(--border);
}
.footer-left[data-v-40d4b00a],
.footer-right[data-v-40d4b00a] {
  display: flex;
  gap: 12px;
}
.btn-save-as-alias[data-v-40d4b00a],
.btn-add[data-v-40d4b00a],
.btn-secondary[data-v-40d4b00a],
.btn-primary[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-save-as-alias[data-v-40d4b00a] {
  background: white;
  border: 1px solid #f59e0b;
  color: #f59e0b;
}
.btn-save-as-alias[data-v-40d4b00a]:hover {
  background: #fef3c7;
}
.btn-add[data-v-40d4b00a] {
  background: var(--primary);
  border: none;
  color: white;
}
.btn-add[data-v-40d4b00a]:hover {
  background: var(--primary-hover);
}
.btn-secondary[data-v-40d4b00a] {
  background: transparent;
  border: 1px solid var(--border);
  color: var(--text-primary);
}
.btn-secondary[data-v-40d4b00a]:hover {
  background: var(--bg-gray);
}
.btn-primary[data-v-40d4b00a] {
  background: var(--primary);
  border: none;
  color: white;
}
.btn-primary[data-v-40d4b00a]:hover:not(:disabled) {
  background: var(--primary-hover);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.btn-primary[data-v-40d4b00a]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.loading-state[data-v-40d4b00a],
.empty-state[data-v-40d4b00a] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 60px 20px;
  text-align: center;
  color: var(--text-secondary);
}
.spinner[data-v-40d4b00a] {
  width: 40px;
  height: 40px;
  border: 3px solid var(--border);
  border-top-color: var(--primary);
  border-radius: 50%;
  animation: spin-40d4b00a 0.8s linear infinite;
  margin-bottom: 16px;
}
@keyframes spin-40d4b00a {
to { transform: rotate(360deg);
}
}
.vendors-table[data-v-40d4b00a],
.account-codes-table[data-v-40d4b00a],
.code-mapping-table[data-v-40d4b00a] {
  overflow-x: auto;
}
.bulk-actions[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  background: transparent;
  border-left: none;
  border-radius: 8px;
  margin-bottom: 16px;
}
.selection-count[data-v-40d4b00a] {
  font-size: 14px;
  font-weight: 600;
  color: #92400e;
}
.btn-danger[data-v-40d4b00a] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  background: #ef4444;
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-danger[data-v-40d4b00a]:hover {
  background: #dc2626;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(239, 68, 68, 0.3);
}
.checkbox-column[data-v-40d4b00a] {
  width: 40px;
  text-align: center;
}
.checkbox-column input[type="checkbox"][data-v-40d4b00a] {
  cursor: pointer;
  width: 16px;
  height: 16px;
}
.barcode-badge[data-v-40d4b00a] {
  display: inline-block;
  padding: 4px 12px;
  background: #dbeafe;
  color: #1e40af;
  border-radius: 12px;
  font-size: 13px;
  font-weight: 600;
  font-family: 'Courier New', monospace;
}
.mapping-badge[data-v-40d4b00a] {
  display: inline-block;
  color: #0f172a;
  font-size: 14px;
  font-weight: 400;
}
.text-muted[data-v-40d4b00a] {
  color: #9ca3af;
}
table[data-v-40d4b00a] {
  width: 100%;
  border-collapse: collapse;
}
thead[data-v-40d4b00a] {
  background: var(--bg-gray);
}
th[data-v-40d4b00a] {
  padding: 12px 16px;
  text-align: left;
  font-size: 13px;
  font-weight: 600;
  color: var(--text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
td[data-v-40d4b00a] {
  padding: 16px;
  border-bottom: 1px solid var(--border);
  font-size: 14px;
  vertical-align: middle;
}
th.actions-column[data-v-40d4b00a] {
  width: 120px;
  min-width: 120px;
  text-align: center;
}
.sortable-header[data-v-40d4b00a] {
  cursor: pointer;
  user-select: none;
}
.sortable-header[data-v-40d4b00a]:hover {
  background-color: var(--bg-secondary, #f3f4f6);
}
.sort-icon[data-v-40d4b00a] {
  margin-left: 6px;
  font-size: 12px;
  color: var(--text-tertiary, #9ca3af);
  transition: color 0.15s ease;
}
.sort-icon.active[data-v-40d4b00a] {
  color: var(--primary, #4a90e2);
}
td.actions-column[data-v-40d4b00a] {
  width: 120px;
  min-width: 120px;
  white-space: nowrap;
  text-align: center;
  vertical-align: middle;
}
.actions-wrapper[data-v-40d4b00a] {
  display: inline-flex;
  gap: 8px;
  justify-content: center;
  align-items: center;
  vertical-align: middle;
}
.btn-icon[data-v-40d4b00a] {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--bg-gray);
  border: 1px solid var(--border);
  border-radius: 6px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
  margin: 0;
  padding: 0;
  flex-shrink: 0;
}
.btn-icon[data-v-40d4b00a]:hover {
  background: var(--primary-light);
  border-color: var(--primary);
  color: var(--primary);
}
.btn-icon.btn-icon-danger[data-v-40d4b00a]:hover {
  background: var(--danger-light);
  border-color: var(--danger);
  color: var(--danger);
}

/* Invoice Action Buttons */
.invoice-actions[data-v-40d4b00a] {
  display: flex;
  gap: 8px;
  flex-shrink: 0;
}
.btn-action[data-v-40d4b00a] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  min-width: 32px;
  padding: 0;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.btn-action svg[data-v-40d4b00a] {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  display: block;
}
.btn-view[data-v-40d4b00a] {
  background: #0ea5e9;
  color: white;
}
.btn-view[data-v-40d4b00a]:hover {
  background: #0284c7;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.btn-export[data-v-40d4b00a] {
  background: #10b981;
  color: white;
}
.btn-export[data-v-40d4b00a]:hover {
  background: #059669;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
}
.btn-action.btn-delete[data-v-40d4b00a] {
  background: #ef4444;
  color: white;
}
.btn-action.btn-delete[data-v-40d4b00a]:hover {
  background: #dc2626;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(239, 68, 68, 0.3);
}

/* Invoice Preview Modal */
.invoice-preview-modal-overlay[data-v-40d4b00a] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10000;
}
.invoice-preview-modal[data-v-40d4b00a] {
  background: white;
  border-radius: 12px;
  width: 90%;
  max-width: 900px;
  max-height: 90vh;
  display: flex;
  flex-direction: column;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
}
.preview-header[data-v-40d4b00a] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 20px;
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
}
.preview-header h3[data-v-40d4b00a] {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  color: var(--text-primary);
}
.preview-actions[data-v-40d4b00a] {
  display: flex;
  gap: 8px;
  align-items: center;
}
.btn-print[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  background: var(--primary, #4a90e2);
  color: white;
  border: none;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-print[data-v-40d4b00a]:hover {
  background: var(--primary-hover, #357abd);
  opacity: 0.9;
}
.btn-close[data-v-40d4b00a] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  background: transparent;
  border: 1px solid var(--border);
  border-radius: 6px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-close[data-v-40d4b00a]:hover {
  background: var(--bg-gray);
  border-color: var(--text-primary);
  color: var(--text-primary);
}
.preview-content[data-v-40d4b00a] {
  flex: 1;
  overflow: auto;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--bg-gray, #f8f8f8);
}
.preview-image[data-v-40d4b00a] {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.preview-placeholder[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-secondary);
  font-size: 16px;
}
@print {
  /* This @print is for fallback only - main printing happens in separate window */
body[data-v-40d4b00a] {
    margin: 0;
    padding: 0;
    background: white;
}
.invoice-preview-modal-overlay[data-v-40d4b00a] {
    background: white;
    width: 100%;
    height: 100%;
}
.invoice-preview-modal[data-v-40d4b00a] {
    width: 100%;
    max-width: 100%;
    height: 100%;
    box-shadow: none;
    border: none;
    border-radius: 0;
}
.preview-header[data-v-40d4b00a] {
    display: none !important;
}
.preview-content[data-v-40d4b00a] {
    padding: 0;
    background: white;
    height: 100%;
}
.preview-image[data-v-40d4b00a] {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    border: none;
    box-shadow: none;
    border-radius: 0;
}
}
@media (max-width: 640px) {
.modal-overlay[data-v-40d4b00a] {
    padding: 0;
}
.modal-content-large[data-v-40d4b00a] {
    max-width: 100%;
    width: 100%;
    max-height: 100vh;
    border-radius: 0;
    margin: 0;
}
.modal-header[data-v-40d4b00a] {
    padding: 16px;
}
.modal-header h2[data-v-40d4b00a] {
    font-size: 18px;
}
.modal-body[data-v-40d4b00a] {
    padding: 16px;
}
.form-row[data-v-40d4b00a] {
    grid-template-columns: 1fr;
}
.tab-navigation[data-v-40d4b00a] {
    overflow-x: auto;
    padding: 0 8px;
    gap: 4px;
}
.tab-button[data-v-40d4b00a] {
    font-size: 12px;
    padding: 8px 12px;
    white-space: nowrap;
}
.tab-header[data-v-40d4b00a] {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
}
.header-actions[data-v-40d4b00a] {
    width: 100%;
    flex-direction: column;
    gap: 8px;
}
.search-box[data-v-40d4b00a] {
    flex: 1;
    width: 100%;
    max-width: 100%;
}
.btn-add[data-v-40d4b00a] {
    width: 100%;
    justify-content: center;
}
.footer-left[data-v-40d4b00a],
  .footer-right[data-v-40d4b00a] {
    flex-direction: column;
    width: 100%;
    gap: 8px;
}
.modal-footer[data-v-40d4b00a] {
    flex-direction: column;
    gap: 12px;
    padding: 16px;
    position: sticky;
    bottom: 0;
    background: white;
    border-top: 1px solid var(--border);
}
.btn-save[data-v-40d4b00a],
  .btn-cancel[data-v-40d4b00a],
  .btn-primary[data-v-40d4b00a],
  .btn-secondary[data-v-40d4b00a],
  .btn-save-as-alias[data-v-40d4b00a] {
    width: 100%;
    justify-content: center;
    padding: 12px 16px;
}
.form-group label[data-v-40d4b00a] {
    font-size: 13px;
}
.form-group input[data-v-40d4b00a] {
    padding: 10px 12px;
    font-size: 14px;
}
}

/* Invoices Table Styles */
.invoices-table[data-v-40d4b00a] {
  background: white;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid var(--border);
}
.select-row[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  background: #f8fafc;
  border-bottom: 1px solid #e2e8f0;
}
.select-all-section[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  gap: 8px;
}
.select-all-section input[type="checkbox"][data-v-40d4b00a] {
  width: 16px;
  height: 16px;
  cursor: pointer;
}
.select-all-section label[data-v-40d4b00a] {
  font-size: 13px;
  color: var(--text-secondary);
  cursor: pointer;
}
.bulk-actions[data-v-40d4b00a] {
  display: flex;
  gap: 8px;
}
.btn-bulk-archive[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 12px 24px;
  border: none;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 700;
  color: white;
  background: linear-gradient(135deg, #10b981 0%, #059669 100%);
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
  height: 45px;
}
.btn-bulk-archive[data-v-40d4b00a]:hover {
  background: linear-gradient(135deg, #059669 0%, #047857 100%);
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(16, 185, 129, 0.4);
}
.btn-bulk-download[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 12px 24px;
  border: none;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 700;
  color: white;
  background: linear-gradient(135deg, #10b981 0%, #059669 100%);
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
  height: 45px;
}
.btn-bulk-download[data-v-40d4b00a]:hover {
  background: linear-gradient(135deg, #059669 0%, #047857 100%);
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(16, 185, 129, 0.4);
}
.btn-bulk-export[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 12px 24px;
  border: none;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 700;
  color: white;
  background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 4px 12px rgba(139, 92, 246, 0.3);
  height: 45px;
}
.btn-bulk-export[data-v-40d4b00a]:hover {
  background: linear-gradient(135deg, #7c3aed 0%, #6d28d9 100%);
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(139, 92, 246, 0.4);
}
.btn-bulk-delete[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 12px 24px;
  border: none;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 700;
  color: white;
  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 4px 12px rgba(239, 68, 68, 0.3);
  height: 45px;
}
.btn-bulk-delete[data-v-40d4b00a]:hover {
  background: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%);
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(239, 68, 68, 0.4);
}
.table-label[data-v-40d4b00a] {
  font-size: 14px;
  font-weight: 600;
  color: #0f172a;
}
.scan-count[data-v-40d4b00a] {
  font-size: 14px;
  color: #64748b;
}
.date-separator[data-v-40d4b00a] {
  padding: 12px 16px;
  background: #f8fafc;
  border-bottom: 1px solid #e2e8f0;
}
.date-separator-row[data-v-40d4b00a] {
  background: #f8fafc !important;
}
.date-separator-row td[data-v-40d4b00a] {
  padding: 12px 16px !important;
  border-bottom: 1px solid #e2e8f0 !important;
}
.date-separator-row[data-v-40d4b00a]:hover {
  background: #f8fafc !important;
}
.date-header[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  gap: 12px;
}
.date-checkbox[data-v-40d4b00a] {
  width: 16px;
  height: 16px;
  cursor: pointer;
  margin: 0;
}
.date-label[data-v-40d4b00a] {
  font-size: 13px;
  color: var(--text-secondary);
  cursor: pointer;
}
.date-count[data-v-40d4b00a] {
  font-size: 12px;
  color: #64748b;
  margin-left: 4px;
}
.invoices-table[data-v-40d4b00a] {
  overflow-x: auto;
  max-width: 100%;
}
.invoices-table table[data-v-40d4b00a] {
  width: 100%;
  border-collapse: collapse;
}
.invoices-table th[data-v-40d4b00a],
.invoices-table td[data-v-40d4b00a] {
  padding: 12px 16px;
  text-align: left;
  border-bottom: 1px solid #e2e8f0;
}
.invoices-table thead[data-v-40d4b00a] {
  background: #f8fafc;
}
.invoices-table th[data-v-40d4b00a] {
  font-weight: 600;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #64748b;
}
.invoices-table td[data-v-40d4b00a] {
  font-size: 14px;
  color: #0f172a;
}
.invoices-table tbody tr[data-v-40d4b00a] {
  transition: background 0.15s ease;
}
.invoices-table tbody tr[data-v-40d4b00a]:hover {
  background: #f8fafc;
}
.checkbox-column[data-v-40d4b00a] {
  width: 50px;
  text-align: center;
}
.checkbox-column input[type="checkbox"][data-v-40d4b00a] {
  width: 16px;
  height: 16px;
  cursor: pointer;
}
.actions-column[data-v-40d4b00a] {
  width: 120px;
  min-width: 120px;
  max-width: 120px;
}
.invoices-table tbody tr[data-v-40d4b00a] {
  transition: background 0.15s ease;
}
.invoices-table tbody tr[data-v-40d4b00a]:hover {
  background: #f8fafc;
}
.checkbox-column[data-v-40d4b00a] {
  width: 50px;
  text-align: center;
}
.checkbox-column input[type="checkbox"][data-v-40d4b00a] {
  width: 16px;
  height: 16px;
  cursor: pointer;
}
.actions-column[data-v-40d4b00a] {
  width: 120px;
  min-width: 120px;
  max-width: 120px;
  display: flex;
  gap: 8px;
  justify-content: center;
  align-items: center;
}
.btn-icon[data-v-40d4b00a] {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--bg-gray);
  border: 1px solid var(--border);
  border-radius: 6px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
  padding: 0;
  flex-shrink: 0;
}
.btn-icon[data-v-40d4b00a]:hover {
  background: var(--primary-light);
  border-color: var(--primary);
  color: var(--primary);
}
.btn-icon.btn-icon-danger[data-v-40d4b00a]:hover {
  background: var(--danger-light);
  border-color: var(--danger);
  color: var(--danger);
}
.status-badge[data-v-40d4b00a] {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 600;
  text-transform: capitalize;
}
.status-pending[data-v-40d4b00a] {
  background: #fef3c7;
  color: #92400e;
}
.status-processed[data-v-40d4b00a] {
  background: #d1fae5;
  color: #065f46;
}
.status-archived[data-v-40d4b00a] {
  background: #e5e7eb;
  color: #374151;
}
.status-failed[data-v-40d4b00a] {
  background: #fee2e2;
  color: #991b1b;
}

/* Filter Row Styles */
.filters-row[data-v-40d4b00a] {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 20px;
  padding: 16px;
  background: #f8fafc;
  border-radius: 8px;
  border: 1px solid #e2e8f0;
}
.filter-item[data-v-40d4b00a] {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 150px;
  flex: 1;
  flex-basis: 0; /* Ensure equal distribution */
}
.filter-item label[data-v-40d4b00a] {
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.filter-select[data-v-40d4b00a],
.filter-input[data-v-40d4b00a] {
  padding: 8px 12px;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  font-size: 14px;
  background: white;
  transition: all 0.2s ease;
  width: 100%; /* Ensure full width */
  box-sizing: border-box; /* Include padding in width */
  max-width: 100%; /* Prevent overflow */
}
.filter-select[data-v-40d4b00a]:focus,
.filter-input[data-v-40d4b00a]:focus {
  outline: none;
  border-color: #0ea5e9;
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.filter-select[data-v-40d4b00a] {
  cursor: pointer;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.filter-select option[data-v-40d4b00a] {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
}

/* Specific width for date inputs */
#filterDateFrom[data-v-40d4b00a],
#filterDateTo[data-v-40d4b00a] {
  width: 151px;
  min-width: 151px;
  max-width: 151px;
}

/* Ensure date filter items maintain proper flex behavior */
.filter-item[data-v-40d4b00a]:has(#filterDateFrom),
.filter-item[data-v-40d4b00a]:has(#filterDateTo) {
  flex: 0 0 auto; /* Don't grow or shrink */
  flex-basis: 151px; /* Base width matches input */
}
.btn-clear-filters[data-v-40d4b00a] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 11px 18px;
  border: 2px solid var(--border);
  border-radius: 10px;
  font-size: 14px;
  font-weight: 600;
  color: var(--text-secondary);
  background: white;
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
  margin-top: 20px;
  align-self: flex-start;
}
.btn-clear-filters[data-v-40d4b00a]:hover {
  border-color: #ef4444;
  color: white;
  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(239, 68, 68, 0.3);
}
.btn-clear-filters svg[data-v-40d4b00a] {
  flex-shrink: 0;
  font-size: 16px;
}

/* Responsive adjustments */
@media (max-width: 950px) {
.invoices-table[data-v-40d4b00a] {
    overflow-x: visible;
}
.invoices-table table[data-v-40d4b00a] {
    display: block;
}
.invoices-table thead[data-v-40d4b00a] {
    display: none;
}
.invoices-table tbody[data-v-40d4b00a] {
    display: block;
}
.invoices-table tbody tr[data-v-40d4b00a] {
    display: flex;
    flex-direction: column;
    margin-bottom: 16px;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 12px;
    background: white;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.invoices-table tbody tr[data-v-40d4b00a]:hover {
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.date-separator-row[data-v-40d4b00a] {
    border: none !important;
    box-shadow: none !important;
    background: #f8fafc !important;
    padding: 8px 12px !important;
    border-radius: 8px !important;
    margin-bottom: 8px !important;
}
.invoices-table td[data-v-40d4b00a] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 0;
    border-bottom: none;
}
.invoices-table td[data-v-40d4b00a]:not(:last-child) {
    border-bottom: 1px solid #f1f5f9;
}
.invoices-table td[data-v-40d4b00a]::before {
    content: attr(data-label);
    font-weight: 600;
    font-size: 12px;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.checkbox-column[data-v-40d4b00a] {
    width: 100%;
    justify-content: flex-start;
}
.checkbox-column[data-v-40d4b00a]::before {
    content: 'Select';
}
.actions-column[data-v-40d4b00a] {
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    flex-direction: row;
    justify-content: flex-end;
    padding: 12px 0 0 0;
    border-top: 1px solid #e2e8f0 !important;
}
.actions-column[data-v-40d4b00a]::before {
    content: none;
}
.invoice-actions[data-v-40d4b00a] {
    display: flex;
    gap: 8px;
    width: 100%;
    justify-content: flex-end;
}
.btn-action[data-v-40d4b00a] {
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
    border-radius: 10px;
}
.btn-action svg[data-v-40d4b00a] {
    width: 18px;
    height: 18px;
}
}
@media (max-width: 768px) {
.filters-row[data-v-40d4b00a] {
    flex-direction: column;
    gap: 8px;
    padding: 12px;
}
.filter-item[data-v-40d4b00a] {
    min-width: 100%;
    gap: 4px;
}
.filter-item label[data-v-40d4b00a] {
    font-size: 11px;
}
.filter-select[data-v-40d4b00a],
  .filter-input[data-v-40d4b00a] {
    padding: 10px 12px;
    font-size: 14px;
}
#filterDateFrom[data-v-40d4b00a],
  #filterDateTo[data-v-40d4b00a] {
    width: 100%;
    min-width: 100%;
    max-width: 100%;
}
.filter-item[data-v-40d4b00a]:has(#filterDateFrom),
  .filter-item[data-v-40d4b00a]:has(#filterDateTo) {
    flex-basis: 100%;
}
.btn-clear-filters[data-v-40d4b00a] {
    width: 100%;
    padding: 12px;
    justify-content: center;
}
.btn-clear-filters[data-v-40d4b00a] {
    align-self: stretch;
    justify-content: center;
}
}

.companies-page[data-v-0f82c7cd] {
  min-height: 100vh;
  background: var(--bg-gray);
  padding: 24px 20px;
}
.companies-container[data-v-0f82c7cd] {
  max-width: 1200px;
  margin: 0 auto;
}
.page-header[data-v-0f82c7cd] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 32px;
}
.header-actions[data-v-0f82c7cd] {
  display: flex;
  align-items: center;
  gap: 12px;
}
.search-box[data-v-0f82c7cd] {
  position: relative;
  display: flex;
  align-items: center;
}
.search-icon[data-v-0f82c7cd] {
  position: absolute;
  left: 14px;
  color: var(--text-secondary);
  pointer-events: none;
}
.search-input[data-v-0f82c7cd] {
  padding: 11px 16px 11px 44px;
  border: 2px solid var(--border);
  border-radius: 10px;
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  background: white;
  width: 300px;
  transition: all 0.2s ease;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}
.search-input[data-v-0f82c7cd]:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 4px rgba(14, 165, 233, 0.15);
}
.search-input[data-v-0f82c7cd]::placeholder {
  color: var(--text-light);
}
.page-title[data-v-0f82c7cd] {
  font-size: 30px;
  font-weight: 800;
  color: var(--text-primary);
  margin: 0 0 6px 0;
  letter-spacing: -0.02em;
}
.page-subtitle[data-v-0f82c7cd] {
  font-size: 14px;
  color: var(--text-secondary);
  margin: 0;
}
.btn-create[data-v-0f82c7cd] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 18px;
  background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
  color: white;
  border: none;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 4px 14px rgba(14, 165, 233, 0.35);
}
.btn-create svg[data-v-0f82c7cd] {
  vertical-align: middle;
}
.btn-create[data-v-0f82c7cd]:hover {
  background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%);
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(14, 165, 233, 0.45);
}
.loading-state[data-v-0f82c7cd],
.empty-state[data-v-0f82c7cd] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 80px 20px;
  text-align: center;
}
.spinner[data-v-0f82c7cd] {
  width: 40px;
  height: 40px;
  border: 3px solid var(--border);
  border-top-color: var(--primary);
  border-radius: 50%;
  animation: spin-0f82c7cd 0.8s linear infinite;
  margin-bottom: 16px;
}
@keyframes spin-0f82c7cd {
to { transform: rotate(360deg);
}
}
.empty-state svg[data-v-0f82c7cd] {
  margin-bottom: 24px;
}
.empty-state h3[data-v-0f82c7cd] {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0 0 8px 0;
}
.empty-state p[data-v-0f82c7cd] {
  font-size: 14px;
  color: var(--text-secondary);
  margin: 0 0 24px 0;
}
.btn-primary[data-v-0f82c7cd] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 13px 28px;
  background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
  color: white;
  border: none;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 4px 14px rgba(14, 165, 233, 0.35);
}
.btn-primary svg[data-v-0f82c7cd] {
  vertical-align: middle;
}
.btn-primary[data-v-0f82c7cd]:hover {
  background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%);
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(14, 165, 233, 0.45);
}
.companies-grid[data-v-0f82c7cd] {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
  gap: 20px;
}
.company-card[data-v-0f82c7cd] {
  background: white;
  border-radius: 14px;
  padding: 24px;
  border: 2px solid var(--border);
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
  cursor: pointer;
}
.company-card[data-v-0f82c7cd]:hover {
  border-color: var(--primary);
  box-shadow: 0 8px 24px rgba(14, 165, 233, 0.15);
  transform: translateY(-4px);
  background: linear-gradient(135deg, #ffffff 0%, #f0f9ff 100%);
}
.company-card.inactive[data-v-0f82c7cd] {
  opacity: 0.5;
  background: #f9fafb;
}
.company-card.inactive[data-v-0f82c7cd]:hover {
  opacity: 0.7;
  background: #f3f4f6;
  border-color: #9ca3af;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}
.company-header[data-v-0f82c7cd] {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--border);
}
.company-name-wrapper[data-v-0f82c7cd] {
  display: flex;
  align-items: center;
  gap: 8px;
}
.company-name[data-v-0f82c7cd] {
  font-size: 19px;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0;
  letter-spacing: -0.01em;
}
.inactive-label[data-v-0f82c7cd] {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  background: #f87171;
  color: white;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  border-radius: 4px;
  letter-spacing: 0.5px;
}
.company-actions[data-v-0f82c7cd] {
  display: flex;
  gap: 4px;
}
.company-actions .btn-icon[data-v-0f82c7cd] {
  background: white;
  border: 1px solid var(--border-color, #d1d5db);
  color: var(--text-secondary, #6b7280);
}
.btn-icon[data-v-0f82c7cd] {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--bg-gray);
  border: 1px solid var(--border);
  border-radius: 6px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-icon[data-v-0f82c7cd]:hover {
  background: var(--primary-light);
  border-color: var(--primary);
  color: var(--primary);
}
.btn-icon-danger[data-v-0f82c7cd]:hover {
  background: var(--danger-light);
  border-color: var(--danger);
  color: var(--danger);
}
.company-details[data-v-0f82c7cd] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.detail-row[data-v-0f82c7cd] {
  display: flex;
  gap: 8px;
}
.detail-label[data-v-0f82c7cd] {
  font-size: 13px;
  color: var(--text-secondary);
  font-weight: 500;
  min-width: 60px;
}
.detail-value[data-v-0f82c7cd] {
  font-size: 13px;
  color: var(--text-primary);
  flex: 1;
}
@media (max-width: 768px) {
.companies-container[data-v-0f82c7cd] {
    padding: 16px;
}
.page-header[data-v-0f82c7cd] {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    margin-bottom: 20px;
}
.page-title[data-v-0f82c7cd] {
    font-size: 24px;
}
.page-subtitle[data-v-0f82c7cd] {
    font-size: 13px;
}
.header-actions[data-v-0f82c7cd] {
    flex-direction: column;
    gap: 10px;
}
.search-box[data-v-0f82c7cd] {
    width: 100%;
}
.search-input[data-v-0f82c7cd] {
    width: 100%;
}
.btn-create[data-v-0f82c7cd] {
    width: 100%;
    justify-content: center;
    padding: 12px 16px;
}
.companies-grid[data-v-0f82c7cd] {
    grid-template-columns: 1fr;
    gap: 12px;
}
.company-card[data-v-0f82c7cd] {
    padding: 16px;
}
.company-header[data-v-0f82c7cd] {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
}
.company-actions[data-v-0f82c7cd] {
    display: flex;
    gap: 8px;
}
}

/* Settings Button */
.btn-settings[data-v-0f82c7cd] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 8px 16px;
  margin-top: 12px;
  background: white;
  color: var(--text-primary);
  border: 2px solid var(--border);
  border-radius: 10px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}
.btn-settings[data-v-0f82c7cd]:hover {
  border-color: var(--primary);
  box-shadow: 0 8px 24px rgba(14, 165, 233, 0.15);
  transform: translateY(-4px);
  background: linear-gradient(135deg, #ffffff 0%, #f0f9ff 100%);
}

/* Settings Section (inline dashboard-style) */
.settings-section[data-v-0f82c7cd] {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
  margin-bottom: 24px;
}
.settings-section-header[data-v-0f82c7cd] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 24px;
  border-bottom: 2px solid var(--border);
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
}
.settings-section-title[data-v-0f82c7cd] {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--primary);
}
.settings-section-title h2[data-v-0f82c7cd] {
  font-size: 18px;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0;
}
.btn-close-settings[data-v-0f82c7cd] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  background: white;
  border: 1px solid var(--border);
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-close-settings[data-v-0f82c7cd]:hover {
  border-color: #ef4444;
  color: #ef4444;
  background: #fef2f2;
}
.settings-section-body[data-v-0f82c7cd] {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* Settings Cards */
.settings-card[data-v-0f82c7cd] {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 20px;
  background: var(--bg-gray);
  border: 1px solid var(--border);
  border-radius: 12px;
  transition: all 0.2s ease;
}
.settings-card.active[data-v-0f82c7cd] {
  background: #f0f9ff;
  border-color: #bae6fd;
}
.settings-card-left[data-v-0f82c7cd] {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  flex: 1;
  min-width: 0;
}
.settings-icon[data-v-0f82c7cd] {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 16px;
  flex-shrink: 0;
}
.settings-icon-amber[data-v-0f82c7cd] {
  background: #f59e0b;
}
.settings-icon-blue[data-v-0f82c7cd] {
  background: var(--primary);
}
.settings-icon-orange[data-v-0f82c7cd] {
  background: #f97316;
}
.settings-icon-green[data-v-0f82c7cd] {
  background: #10b981;
}
.settings-info[data-v-0f82c7cd] {
  flex: 1;
  min-width: 0;
}
.settings-info h3[data-v-0f82c7cd] {
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0 0 4px 0;
}
.settings-info p[data-v-0f82c7cd] {
  font-size: 13px;
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.5;
}
.settings-gear-btn[data-v-0f82c7cd] {
  background: white;
  border: 1px solid var(--border-color, #d1d5db);
  border-radius: 6px;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s;
  color: var(--text-secondary, #6b7280);
  flex-shrink: 0;
  margin-top: 4px;
}
.settings-gear-btn[data-v-0f82c7cd]:hover {
  background: var(--primary, #4f8cff);
  color: white;
  border-color: var(--primary, #4f8cff);
}

/* Toggle Switch */
.toggle[data-v-0f82c7cd] {
  position: relative;
  display: inline-block;
  width: 36px;
  height: 20px;
  flex-shrink: 0;
  margin-top: 2px;
  cursor: pointer;
}
.toggle input[data-v-0f82c7cd] {
  opacity: 0;
  width: 0;
  height: 0;
}
.toggle-track[data-v-0f82c7cd] {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #cbd5e1;
  border-radius: 20px;
  transition: all 0.2s ease;
}
.toggle-track[data-v-0f82c7cd]::before {
  content: '';
  position: absolute;
  height: 14px;
  width: 14px;
  left: 3px;
  bottom: 3px;
  background: white;
  border-radius: 50%;
  transition: all 0.2s ease;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}
.toggle input:checked + .toggle-track[data-v-0f82c7cd] {
  background: var(--primary);
}
.toggle input:checked + .toggle-track[data-v-0f82c7cd]::before {
  transform: translateX(16px);
}
.toggle input:focus-visible + .toggle-track[data-v-0f82c7cd] {
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.15);
}

/* Modal Styles */
.modal-backdrop[data-v-0f82c7cd] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10000;
  padding: 20px;
  box-sizing: border-box;
}
.modal-container[data-v-0f82c7cd] {
  width: 100%;
  max-width: 500px;
  max-height: 90vh;
  overflow-y: auto;
  background: white;
  border-radius: 12px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
  margin: auto;
  position: relative;
}
.modal-content[data-v-0f82c7cd] {
  display: flex;
  flex-direction: column;
}
.modal-header[data-v-0f82c7cd] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 24px;
  border-bottom: 1px solid #e5e7eb;
}
.modal-title[data-v-0f82c7cd] {
  font-size: 18px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}
.modal-body[data-v-0f82c7cd] {
  padding: 24px;
}
.accounting-date-hint[data-v-0f82c7cd] {
  font-size: 14px;
  color: var(--text-secondary);
  margin: 0 0 20px 0;
  line-height: 1.5;
}
.clients-scope-options[data-v-0f82c7cd] {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 18px;
}
.clients-scope-option[data-v-0f82c7cd] {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.15s ease;
  background: white;
}
.clients-scope-option[data-v-0f82c7cd]:hover {
  border-color: var(--primary);
  background: #f8fafc;
}
.clients-scope-option input[type="radio"][data-v-0f82c7cd] {
  margin-top: 3px;
  cursor: pointer;
  accent-color: var(--primary);
}
.clients-scope-label[data-v-0f82c7cd] {
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: 2px;
}
.clients-scope-hint[data-v-0f82c7cd] {
  font-size: 12px;
  color: var(--text-secondary);
  line-height: 1.4;
}
.clients-companies-list[data-v-0f82c7cd] {
  display: flex;
  flex-direction: column;
  gap: 4px;
  max-height: 320px;
  overflow-y: auto;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 6px;
  background: #f9fafb;
}
.clients-company-row[data-v-0f82c7cd] {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  border-radius: 6px;
  cursor: pointer;
  font-size: 14px;
  color: var(--text-primary);
  user-select: none;
  transition: background 0.15s ease;
}
.clients-company-row[data-v-0f82c7cd]:hover {
  background: white;
}
.clients-company-row input[type="checkbox"][data-v-0f82c7cd] {
  width: 16px;
  height: 16px;
  cursor: pointer;
  accent-color: var(--primary);
}
.clients-companies-empty[data-v-0f82c7cd] {
  padding: 16px;
  text-align: center;
  color: var(--text-secondary);
  font-size: 13px;
}
.form-group[data-v-0f82c7cd] {
  margin-bottom: 16px;
}
.form-group label[data-v-0f82c7cd] {
  display: block;
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  margin-bottom: 8px;
}
.form-control[data-v-0f82c7cd] {
  width: 100%;
  padding: 10px 12px;
  font-size: 14px;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  transition: all 0.2s;
}
.form-control[data-v-0f82c7cd]:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.modal-footer[data-v-0f82c7cd] {
  display: flex;
  gap: 12px;
  justify-content: flex-end;
  padding: 16px 24px;
  border-top: 1px solid #e5e7eb;
}
.btn[data-v-0f82c7cd] {
  padding: 10px 20px;
  font-size: 14px;
  font-weight: 500;
  border-radius: 6px;
  border: none;
  cursor: pointer;
  transition: all 0.2s;
}
.btn-primary[data-v-0f82c7cd] {
  background: var(--primary);
  color: white;
}
.btn-primary[data-v-0f82c7cd]:hover {
  background: #0ea5e9;
}
.btn-secondary[data-v-0f82c7cd] {
  background: #f3f4f6;
  color: var(--text-primary);
}
.btn-secondary[data-v-0f82c7cd]:hover {
  background: #e5e7eb;
}
.btn-icon[data-v-0f82c7cd] {
  background: transparent;
  border: none;
  padding: 8px;
  cursor: pointer;
  color: var(--text-secondary);
  transition: color 0.2s;
}
.btn-icon[data-v-0f82c7cd]:hover {
  color: var(--text-primary);
}

.vendors-page[data-v-5a2588cc] {
  min-height: 100vh;
  background: var(--bg-gray);
  padding: 24px 20px;
}
.vendors-container[data-v-5a2588cc] {
  max-width: 1200px;
  margin: 0 auto;
}
.page-header[data-v-5a2588cc] {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 32px;
  gap: 20px;
}
.btn-back[data-v-5a2588cc] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  background: transparent;
  border: 1px solid var(--border);
  border-radius: 6px;
  font-size: 14px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
  margin-bottom: 12px;
}
.btn-back[data-v-5a2588cc]:hover {
  background: var(--bg-gray);
  color: var(--text-primary);
}
.page-title[data-v-5a2588cc] {
  font-size: 24px;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0 0 4px 0;
}
.page-subtitle[data-v-5a2588cc] {
  font-size: 14px;
  color: var(--text-secondary);
  margin: 0;
}
.btn-create[data-v-5a2588cc] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  background: var(--primary);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.btn-create[data-v-5a2588cc]:hover {
  background: var(--primary-hover);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.loading-state[data-v-5a2588cc],
.empty-state[data-v-5a2588cc] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 80px 20px;
  text-align: center;
}
.spinner[data-v-5a2588cc] {
  width: 40px;
  height: 40px;
  border: 3px solid var(--border);
  border-top-color: var(--primary);
  border-radius: 50%;
  animation: spin-5a2588cc 0.8s linear infinite;
  margin-bottom: 16px;
}
@keyframes spin-5a2588cc {
to { transform: rotate(360deg);
}
}
.empty-state svg[data-v-5a2588cc] {
  margin-bottom: 24px;
}
.empty-state h3[data-v-5a2588cc] {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0 0 8px 0;
}
.empty-state p[data-v-5a2588cc] {
  font-size: 14px;
  color: var(--text-secondary);
  margin: 0 0 24px 0;
}
.btn-primary[data-v-5a2588cc] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  background: var(--primary);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-primary[data-v-5a2588cc]:hover {
  background: var(--primary-hover);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.vendors-list[data-v-5a2588cc] {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
  gap: 20px;
}
.vendor-card[data-v-5a2588cc] {
  background: white;
  border-radius: 12px;
  padding: 20px;
  border: 1px solid var(--border);
  transition: all 0.2s ease;
}
.vendor-card[data-v-5a2588cc]:hover {
  border-color: var(--primary);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.1);
  transform: translateY(-2px);
}
.vendor-header[data-v-5a2588cc] {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--border);
}
.vendor-name[data-v-5a2588cc] {
  font-size: 18px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
  flex: 1;
}
.btn-icon[data-v-5a2588cc] {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--bg-gray);
  border: 1px solid var(--border);
  border-radius: 6px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-icon[data-v-5a2588cc]:hover {
  background: var(--primary-light);
  border-color: var(--primary);
  color: var(--primary);
}
.vendor-details[data-v-5a2588cc] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.detail-row[data-v-5a2588cc] {
  display: flex;
  gap: 8px;
}
.detail-label[data-v-5a2588cc] {
  font-size: 13px;
  color: var(--text-secondary);
  font-weight: 500;
  min-width: 60px;
}
.detail-value[data-v-5a2588cc] {
  font-size: 13px;
  color: var(--text-primary);
  flex: 1;
}
@media (max-width: 768px) {
.page-header[data-v-5a2588cc] {
    flex-direction: column;
    align-items: flex-start;
}
.vendors-list[data-v-5a2588cc] {
    grid-template-columns: 1fr;
}
}

.account-codes-page[data-v-74c154f2] {
  min-height: 100vh;
  background: var(--bg-gray);
  padding: 24px 20px;
}
.account-codes-container[data-v-74c154f2] {
  max-width: 1200px;
  margin: 0 auto;
}
.page-header[data-v-74c154f2] {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 32px;
  gap: 20px;
}
.btn-back[data-v-74c154f2] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  background: transparent;
  border: 1px solid var(--border);
  border-radius: 6px;
  font-size: 14px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
  margin-bottom: 12px;
}
.btn-back[data-v-74c154f2]:hover {
  background: var(--bg-gray);
  color: var(--text-primary);
}
.page-title[data-v-74c154f2] {
  font-size: 24px;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0 0 4px 0;
}
.page-subtitle[data-v-74c154f2] {
  font-size: 14px;
  color: var(--text-secondary);
  margin: 0;
}
.header-actions[data-v-74c154f2] {
  display: flex;
  gap: 12px;
  flex-shrink: 0;
}
.btn-secondary[data-v-74c154f2] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  background: white;
  color: var(--text-primary);
  border: 2px solid var(--border);
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-secondary[data-v-74c154f2]:hover {
  border-color: var(--primary);
  color: var(--primary);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.2);
}
.btn-create[data-v-74c154f2] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  background: var(--primary);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.btn-create[data-v-74c154f2]:hover {
  background: var(--primary-hover);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.loading-state[data-v-74c154f2],
.empty-state[data-v-74c154f2] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 80px 20px;
  text-align: center;
}
.spinner[data-v-74c154f2] {
  width: 40px;
  height: 40px;
  border: 3px solid var(--border);
  border-top-color: var(--primary);
  border-radius: 50%;
  animation: spin-74c154f2 0.8s linear infinite;
  margin-bottom: 16px;
}
@keyframes spin-74c154f2 {
to { transform: rotate(360deg);
}
}
.empty-state svg[data-v-74c154f2] {
  margin-bottom: 24px;
}
.empty-state h3[data-v-74c154f2] {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0 0 8px 0;
}
.empty-state p[data-v-74c154f2] {
  font-size: 14px;
  color: var(--text-secondary);
  margin: 0 0 24px 0;
}
.btn-primary[data-v-74c154f2] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  background: var(--primary);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-primary[data-v-74c154f2]:hover {
  background: var(--primary-hover);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.account-codes-table[data-v-74c154f2] {
  background: white;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--border);
}
table[data-v-74c154f2] {
  width: 100%;
  border-collapse: collapse;
}
thead[data-v-74c154f2] {
  background: var(--bg-gray);
}
th[data-v-74c154f2] {
  text-align: left;
  padding: 16px 20px;
  font-size: 13px;
  font-weight: 600;
  color: var(--text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
tbody tr[data-v-74c154f2] {
  border-bottom: 1px solid var(--border);
  transition: all 0.2s ease;
}
tbody tr[data-v-74c154f2]:hover {
  background: var(--bg-gray);
}
tbody tr[data-v-74c154f2]:last-child {
  border-bottom: none;
}
td[data-v-74c154f2] {
  padding: 16px 20px;
  font-size: 14px;
  color: var(--text-primary);
}
.code-cell[data-v-74c154f2] {
  font-weight: 600;
  font-family: monospace;
  color: var(--primary);
}
.type-badge[data-v-74c154f2] {
  display: inline-block;
  padding: 4px 12px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 600;
  text-transform: capitalize;
}
.type-expense[data-v-74c154f2] {
  background: #fee2e2;
  color: #991b1b;
}
.type-revenue[data-v-74c154f2] {
  background: #dcfce7;
  color: #166534;
}
.type-neutral[data-v-74c154f2] {
  background: #f3f4f6;
  color: #374151;
}
.type-asset[data-v-74c154f2] {
  background: #dbeafe;
  color: #1e40af;
}
.type-liability[data-v-74c154f2] {
  background: #fef3c7;
  color: #92400e;
}
.status-badge[data-v-74c154f2] {
  display: inline-block;
  padding: 4px 12px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 600;
}
.status-badge.active[data-v-74c154f2] {
  background: var(--success-bg);
  color: var(--success-dark);
}
.status-badge.inactive[data-v-74c154f2] {
  background: var(--gray-light);
  color: var(--text-secondary);
}
.btn-icon[data-v-74c154f2] {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 1px solid var(--border);
  border-radius: 6px;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-icon[data-v-74c154f2]:hover {
  background: var(--primary-light);
  border-color: var(--primary);
  color: var(--primary);
}
@media (max-width: 768px) {
.page-header[data-v-74c154f2] {
    flex-direction: column;
    align-items: flex-start;
}
.account-codes-table[data-v-74c154f2] {
    overflow-x: auto;
}
table[data-v-74c154f2] {
    min-width: 600px;
}
}

/* Animations */
@keyframes slide-up-2be61bca {
from {
    opacity: 0;
    transform: translateY(20px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}
@keyframes fade-in-2be61bca {
from {
    opacity: 0;
}
to {
    opacity: 1;
}
}
.animate-slide-up[data-v-2be61bca] {
  animation: slide-up-2be61bca 0.4s ease-out forwards;
}
.animate-fade-in[data-v-2be61bca] {
  animation: fade-in-2be61bca 0.5s ease-out;
}

/* Utility Classes */
.grid[data-v-2be61bca] { display: grid;
}
.grid-cols-1[data-v-2be61bca] { grid-template-columns: repeat(1, minmax(0, 1fr));
}
.gap-3[data-v-2be61bca] { gap: 0.75rem;
}
.gap-4[data-v-2be61bca] { gap: 1rem;
}
.mb-1[data-v-2be61bca] { margin-bottom: 0.25rem;
}
.mb-4[data-v-2be61bca] { margin-bottom: 1rem;
}
.mb-6[data-v-2be61bca] { margin-bottom: 1.5rem;
}
.mb-8[data-v-2be61bca] { margin-bottom: 2rem;
}
.p-5[data-v-2be61bca] { padding: 1.25rem;
}
.py-16[data-v-2be61bca] { padding-top: 4rem; padding-bottom: 4rem;
}
.w-5[data-v-2be61bca] { width: 1.25rem;
}
.h-5[data-v-2be61bca] { height: 1.25rem;
}
.w-10[data-v-2be61bca] { width: 2.5rem;
}
.h-10[data-v-2be61bca] { height: 2.5rem;
}
.w-20[data-v-2be61bca] { width: 5rem;
}
.h-20[data-v-2be61bca] { height: 5rem;
}
.rounded-lg[data-v-2be61bca] { border-radius: 0.5rem;
}
.rounded-xl[data-v-2be61bca] { border-radius: 0.75rem;
}
.rounded-full[data-v-2be61bca] { border-radius: 9999px;
}
.text-xs[data-v-2be61bca] { font-size: 0.75rem; line-height: 1rem;
}
.text-sm[data-v-2be61bca] { font-size: 0.875rem; line-height: 1.25rem;
}
.text-lg[data-v-2be61bca] { font-size: 1.125rem; line-height: 1.75rem;
}
.text-2xl[data-v-2be61bca] { font-size: 1.5rem; line-height: 2rem;
}
.font-bold[data-v-2be61bca] { font-weight: 700;
}
.font-semibold[data-v-2be61bca] { font-weight: 600;
}
.font-medium[data-v-2be61bca] { font-weight: 500;
}
.font-mono[data-v-2be61bca] { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}
.flex[data-v-2be61bca] { display: flex;
}
.flex-col[data-v-2be61bca] { flex-direction: column;
}
.items-center[data-v-2be61bca] { align-items: center;
}
.justify-center[data-v-2be61bca] { justify-content: center;
}
.bg-card[data-v-2be61bca] { background-color: white;
}
.bg-accent[data-v-2be61bca] { background-color: #f1f5f9;
}
.bg-muted[data-v-2be61bca] { background-color: #f1f5f9;
}
.bg-status-paid\/15[data-v-2be61bca] { background-color: rgba(16, 185, 129, 0.15);
}
.text-accent-foreground[data-v-2be61bca] { color: #64748b;
}
.text-muted-foreground[data-v-2be61bca] { color: #64748b;
}
.text-foreground[data-v-2be61bca] { color: #0f172a;
}
.text-status-paid[data-v-2be61bca] { color: #10b981;
}
.text-primary-foreground[data-v-2be61bca] { color: white;
}
.gradient-primary[data-v-2be61bca] { background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%);
}
.invoice-shadow[data-v-2be61bca] { box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1);
}
@media (min-width: 768px) {
.md\:grid-cols-3[data-v-2be61bca] { grid-template-columns: repeat(3, minmax(0, 1fr));
}
}

/* Original Styles */
.manual-invoice-page[data-v-2be61bca] {
  min-height: 100vh;
  background: var(--bg-gray);
  padding: 24px 0;
}
.page-container[data-v-2be61bca] {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 24px;
}

/* Stats Cards Animations */
@keyframes slide-up-2be61bca {
from {
    opacity: 0;
    transform: translateY(20px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}
@keyframes fade-in-2be61bca {
from {
    opacity: 0;
}
to {
    opacity: 1;
}
}
.animate-slide-up[data-v-2be61bca] {
  animation: slide-up-2be61bca 0.4s ease-out forwards;
}
.animate-fade-in[data-v-2be61bca] {
  animation: fade-in-2be61bca 0.5s ease-out forwards;
}

/* Card Styles */
.bg-card[data-v-2be61bca] {
  background: white;
}
.invoice-shadow[data-v-2be61bca] {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
.bg-accent[data-v-2be61bca] {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}
.text-accent-foreground[data-v-2be61bca] {
  color: white;
}
.text-muted-foreground[data-v-2be61bca] {
  color: #64748b;
}
.text-foreground[data-v-2be61bca] {
  color: #1e293b;
}
.bg-status-paid\/15[data-v-2be61bca] {
  background: rgba(34, 197, 94, 0.15);
}
.text-status-paid[data-v-2be61bca] {
  color: #22c55e;
}
.gradient-primary[data-v-2be61bca] {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}
.text-primary-foreground[data-v-2be61bca] {
  color: white;
}

/* Button Styles */
.btn-new-invoice[data-v-2be61bca] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3);
}
.btn-new-invoice[data-v-2be61bca]:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4);
}
.btn-create-first[data-v-2be61bca] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3);
}
.btn-create-first[data-v-2be61bca]:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4);
}

/* Invoice Table */
.invoices-table[data-v-2be61bca] {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.scan-row[data-v-2be61bca] {
  display: grid;
  grid-template-columns: 40px 140px 80px 100px 1fr 240px;
  align-items: center;
  gap: 16px;
  padding: 16px 20px;
  background: white;
  border: 1px solid var(--border);
  border-radius: 12px;
  transition: all 0.2s ease;
}
.scan-row[data-v-2be61bca]:hover {
  border-color: #cbd5e1;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
.scan-checkbox[data-v-2be61bca] {
  display: flex;
  align-items: center;
  justify-content: center;
}
.checkbox-input[data-v-2be61bca] {
  width: 18px;
  height: 18px;
  cursor: pointer;
}
.scan-status[data-v-2be61bca] {
  display: flex;
  align-items: center;
  padding: 6px 12px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
}
.status-completed[data-v-2be61bca] {
  background: #dcfce7;
  color: #166534;
}
.scan-time[data-v-2be61bca] {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: var(--gray-dark);
}
.scan-thumbnail[data-v-2be61bca] {
  width: 80px;
  height: 100px;
  background: var(--bg-gray);
  border-radius: 8px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.thumbnail-img[data-v-2be61bca] {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.scan-info[data-v-2be61bca] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.invoice-header[data-v-2be61bca] {
  display: flex;
  align-items: center;
  gap: 12px;
}
.invoice-type[data-v-2be61bca] {
  font-size: 11px;
  font-weight: 700;
  color: var(--gray-dark);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.invoice-number[data-v-2be61bca] {
  font-size: 16px;
  font-weight: 700;
  color: var(--text-primary);
}
.invoice-details[data-v-2be61bca] {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: var(--gray-dark);
}
.company-text[data-v-2be61bca] {
  font-weight: 500;
}
.invoice-amount[data-v-2be61bca] {
  display: flex;
  align-items: baseline;
  gap: 4px;
}
.amount-value[data-v-2be61bca] {
  font-size: 18px;
  font-weight: 700;
  color: var(--text-primary);
}
.amount-currency[data-v-2be61bca] {
  font-size: 13px;
  font-weight: 600;
  color: var(--gray-dark);
}
.invoice-date[data-v-2be61bca] {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: var(--gray-dark);
}
.invoice-type-selector[data-v-2be61bca] {
  margin-top: 4px;
}
.type-select[data-v-2be61bca] {
  padding: 6px 10px;
  border: 1px solid var(--border);
  border-radius: 6px;
  font-size: 13px;
  background: white;
  cursor: pointer;
  transition: border-color 0.2s ease;
}
.type-select[data-v-2be61bca]:hover {
  border-color: #cbd5e1;
}
.type-select[data-v-2be61bca]:focus {
  outline: none;
  border-color: var(--primary);
}
.scan-actions[data-v-2be61bca] {
  display: flex;
  gap: 8px;
  flex-shrink: 0;
}
.btn-action[data-v-2be61bca] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  min-width: 32px;
  padding: 0;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.btn-action svg[data-v-2be61bca] {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  display: block;
}
.btn-view[data-v-2be61bca] {
  background: #0ea5e9;
  color: white;
}
.btn-view[data-v-2be61bca]:hover {
  background: #0284c7;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3);
}
.btn-export[data-v-2be61bca] {
  background: #10b981;
  color: white;
}
.btn-export[data-v-2be61bca]:hover {
  background: #059669;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
}
.btn-action.btn-delete[data-v-2be61bca] {
  background: #ef4444;
  color: white;
}
.btn-action.btn-delete[data-v-2be61bca]:hover {
  background: #dc2626;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(239, 68, 68, 0.3);
}

/* Modal Styles */
.modal-overlay[data-v-2be61bca] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  padding: 20px;
  overflow-y: auto;
}
.modal-container[data-v-2be61bca] {
  width: 100%;
  max-width: 700px;
  max-height: 85vh;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: auto;
}
.modal-content[data-v-2be61bca] {
  background: white;
  border-radius: 12px;
  width: 100%;
  max-height: 85vh;
  display: flex;
  flex-direction: column;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
  animation: modal-appear-2be61bca 0.3s ease-out;
}
@keyframes modal-appear-2be61bca {
from {
    opacity: 0;
    transform: scale(0.95);
}
to {
    opacity: 1;
    transform: scale(1);
}
}
.modal-header[data-v-2be61bca] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 20px;
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
}
.modal-title[data-v-2be61bca] {
  font-size: 18px;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0;
}
.btn-close-modal[data-v-2be61bca] {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  border-radius: 6px;
  color: var(--gray-dark);
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-close-modal[data-v-2be61bca]:hover {
  background: var(--bg-gray);
  color: var(--text-primary);
}
.modal-body[data-v-2be61bca] {
  padding: 20px;
  overflow-y: auto;
  flex: 1;
}

/* Invoice Form Styles */
.invoice-form[data-v-2be61bca] {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.form-section[data-v-2be61bca] {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.section-title[data-v-2be61bca] {
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
  display: flex;
  align-items: center;
  gap: 8px;
}
.section-header-with-button[data-v-2be61bca] {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.form-row[data-v-2be61bca] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.form-field[data-v-2be61bca] {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.form-field label[data-v-2be61bca] {
  font-size: 13px;
  font-weight: 500;
  color: #64748b;
}
.form-field input[data-v-2be61bca],
.form-field select[data-v-2be61bca],
.form-field textarea[data-v-2be61bca] {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  font-size: 14px;
  color: var(--text-primary);
  background: white;
  transition: border-color 0.2s ease;
}
.form-field input[data-v-2be61bca]:focus,
.form-field select[data-v-2be61bca]:focus,
.form-field textarea[data-v-2be61bca]:focus {
  outline: none;
  border-color: #3b82f6;
}
.form-field textarea[data-v-2be61bca] {
  resize: vertical;
  font-family: inherit;
  line-height: 1.5;
}
.upload-box[data-v-2be61bca] {
  display: flex;
  align-items: center;
  gap: 8px;
}
.upload-btn[data-v-2be61bca] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 16px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 500;
  color: var(--text-primary);
  cursor: pointer;
  transition: all 0.2s ease;
}
.upload-btn[data-v-2be61bca]:hover {
  background: #f1f5f9;
  border-color: #cbd5e1;
}
.upload-hint[data-v-2be61bca] {
  font-size: 12px;
  color: #94a3b8;
}

/* Items Table */
.items-table[data-v-2be61bca] {
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  overflow: hidden;
}
.table-header[data-v-2be61bca] {
  display: grid;
  grid-template-columns: 2fr 80px 120px 100px 40px;
  gap: 12px;
  padding: 12px;
  background: #f8fafc;
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
  border-bottom: 1px solid #e2e8f0;
}
.table-row[data-v-2be61bca] {
  display: grid;
  grid-template-columns: 2fr 80px 120px 100px 40px;
  gap: 12px;
  padding: 12px;
  border-bottom: 1px solid #f1f5f9;
  align-items: center;
}
.table-row[data-v-2be61bca]:last-child {
  border-bottom: none;
}
.table-row input[data-v-2be61bca] {
  padding: 8px 10px;
  border: 1px solid #e2e8f0;
  border-radius: 4px;
  font-size: 13px;
}
.table-row input[data-v-2be61bca]:focus {
  outline: none;
  border-color: #3b82f6;
}
.col-description[data-v-2be61bca] { grid-column: 1;
}
.col-qty[data-v-2be61bca] { grid-column: 2; text-align: center;
}
.col-price[data-v-2be61bca] { grid-column: 3;
}
.col-total[data-v-2be61bca] { grid-column: 4; text-align: right; font-weight: 500;
}
.col-action[data-v-2be61bca] { grid-column: 5; text-align: center;
}
.btn-add-item[data-v-2be61bca] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  background: white;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 500;
  color: var(--text-primary);
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-add-item[data-v-2be61bca]:hover {
  background: #f8fafc;
  border-color: #cbd5e1;
}
.btn-remove-item[data-v-2be61bca] {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  color: #94a3b8;
  cursor: pointer;
  border-radius: 4px;
  transition: all 0.2s ease;
}
.btn-remove-item[data-v-2be61bca]:hover {
  background: #fef2f2;
  color: #ef4444;
}
.total-amount[data-v-2be61bca] {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 16px;
  padding: 16px 12px;
  font-size: 16px;
}
.total-amount strong[data-v-2be61bca] {
  font-size: 20px;
  font-weight: 700;
  color: var(--text-primary);
}
.section-header[data-v-2be61bca] {
  margin: 32px 0 20px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--border);
}
.section-header h3[data-v-2be61bca] {
  font-size: 18px;
  font-weight: 700;
  color: var(--text-primary);
  display: flex;
  align-items: center;
  gap: 8px;
}

/* Logo Upload */
.logo-upload-container[data-v-2be61bca] {
  width: 100%;
}
.logo-upload-placeholder[data-v-2be61bca] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 32px;
  border: 2px dashed var(--border);
  border-radius: 12px;
  background: var(--bg-gray);
  transition: all 0.2s ease;
}
.logo-upload-placeholder[data-v-2be61bca]:hover {
  border-color: var(--primary);
  background: rgba(102, 126, 234, 0.05);
}
.btn-upload-logo[data-v-2be61bca] {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  background: var(--primary);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn-upload-logo[data-v-2be61bca]:hover {
  background: var(--primary-dark);
  transform: translateY(-1px);
}
.upload-hint[data-v-2be61bca] {
  margin-top: 12px;
  font-size: 13px;
  color: var(--gray-dark);
}
.logo-preview[data-v-2be61bca] {
  position: relative;
  display: inline-block;
  max-width: 300px;
  padding: 16px;
  border: 2px solid var(--border);
  border-radius: 12px;
  background: white;
}
.logo-preview img[data-v-2be61bca] {
  max-width: 100%;
  max-height: 200px;
  display: block;
  border-radius: 8px;
}
.btn-remove-logo[data-v-2be61bca] {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 32px;
  height: 32px;
  background: var(--danger);
  color: white;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
}
.btn-remove-logo[data-v-2be61bca]:hover {
  background: #dc2626;
  transform: scale(1.1);
}

/* Total Input */
.total-label[data-v-2be61bca] {
  font-weight: 700;
  color: var(--primary);
}
.total-input[data-v-2be61bca] {
  font-weight: 700;
  font-size: 16px;
  background: var(--bg-gray);
  color: var(--primary);
}

/* Error Message */
.error-message[data-v-2be61bca] {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px;
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: 8px;
  color: #dc2626;
  font-size: 14px;
  margin-bottom: 20px;
}
.required[data-v-2be61bca] {
  color: #ef4444;
  margin-left: 2px;
}

/* Form Actions */
.form-actions[data-v-2be61bca] {
  display: flex;
  gap: 12px;
  justify-content: flex-end;
  padding-top: 8px;
}
.btn[data-v-2be61bca] {
  padding: 11px 24px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: none;
}
.btn-cancel[data-v-2be61bca] {
  background: white;
  color: #64748b;
  border: 1px solid #e2e8f0;
}
.btn-cancel[data-v-2be61bca]:hover {
  background: #f8fafc;
  border-color: #cbd5e1;
  color: var(--text-primary);
}
.btn-create[data-v-2be61bca] {
  background: #16a34a;
  color: white;
  min-width: 140px;
}
.btn-create[data-v-2be61bca]:hover:not(:disabled) {
  background: #15803d;
}
.btn-create[data-v-2be61bca]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* Responsive */
@media (max-width: 768px) {
.form-row[data-v-2be61bca] {
    grid-template-columns: 1fr;
}
.grid[data-v-2be61bca] {
    grid-template-columns: 1fr;
}
.form-actions[data-v-2be61bca] {
    flex-direction: column;
}
.btn[data-v-2be61bca] {
    width: 100%;
    justify-content: center;
}
}

.auth-page[data-v-4e7235a5] { min-height: 100vh; background: var(--bg);
}
.auth-split[data-v-4e7235a5] { display: grid; grid-template-columns: 1fr 1fr; min-height: 100vh;
}

/* form side */
.auth-form-side[data-v-4e7235a5] { display: flex; align-items: center; justify-content: center; padding: 40px 24px;
}
.auth-container[data-v-4e7235a5], .auth-card[data-v-4e7235a5] { width: 100%; max-width: 420px;
}
.auth-card[data-v-4e7235a5] { background: transparent;
}
.auth-logo[data-v-4e7235a5] { display: flex; justify-content: center; margin-bottom: 28px;
}
.auth-logo img[data-v-4e7235a5] { height: 38px;
}
.auth-header[data-v-4e7235a5] { text-align: center; margin-bottom: 30px;
}
.auth-title[data-v-4e7235a5] { font-size: 30px; font-weight: 700; letter-spacing: -0.03em; color: var(--ink); margin: 0 0 8px;
}
.auth-subtitle[data-v-4e7235a5] { font-size: 15px; color: var(--muted); margin: 0;
}
.alert[data-v-4e7235a5] { display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-radius: 12px; margin-bottom: 20px; font-size: 14px; font-weight: 500;
}
.alert-error[data-v-4e7235a5] { background: #fef2f2; color: #dc2626; border: 1px solid #fecaca;
}
.alert-success[data-v-4e7235a5] { background: #f0fdf4; color: #16a34a; border: 1px solid #bbf7d0;
}
.alert svg[data-v-4e7235a5] { flex-shrink: 0;
}
.btn-google[data-v-4e7235a5] { display: flex; align-items: center; justify-content: center; gap: 12px; width: 100%; padding: 14px 24px; background: #fff; border: 1px solid var(--line); border-radius: var(--pill); font-size: 15px; font-weight: 600; color: var(--ink); text-decoration: none; transition: all 0.2s ease; cursor: pointer;
}
.btn-google[data-v-4e7235a5]:hover { border-color: #cbd5e1; transform: translateY(-2px); box-shadow: 0 14px 30px -18px rgba(31,41,51,0.35);
}
.google-icon[data-v-4e7235a5] { width: 20px; height: 20px;
}
.divider[data-v-4e7235a5] { display: flex; align-items: center; margin: 22px 0; color: var(--muted); font-size: 14px;
}
.divider[data-v-4e7235a5]::before, .divider[data-v-4e7235a5]::after { content: ''; flex: 1; height: 1px; background: var(--line);
}
.divider span[data-v-4e7235a5] { padding: 0 16px;
}
.auth-form[data-v-4e7235a5] { display: flex; flex-direction: column; gap: 18px;
}
.form-group[data-v-4e7235a5] { display: flex; flex-direction: column; gap: 7px;
}
.form-label[data-v-4e7235a5] { font-size: 13.5px; font-weight: 600; color: var(--ink);
}
.form-input[data-v-4e7235a5] { width: 100%; padding: 13px 16px; border: 1px solid var(--line); border-radius: 12px; font-size: 15px; color: var(--ink); background: #fbfbfd; transition: all 0.2s ease; font-family: inherit;
}
.form-input[data-v-4e7235a5]:focus { outline: none; border-color: var(--violet); box-shadow: 0 0 0 3px rgba(43,130,240,0.12); background: #fff;
}
.form-input[data-v-4e7235a5]:disabled { background: #f1f3f6; cursor: not-allowed;
}
.password-input-wrapper[data-v-4e7235a5] { position: relative;
}
.password-toggle[data-v-4e7235a5] { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); background: none; border: none; color: var(--muted); cursor: pointer; padding: 8px; display: flex; transition: color 0.2s ease;
}
.password-toggle[data-v-4e7235a5]:hover { color: var(--violet);
}
.form-options[data-v-4e7235a5] { display: flex; justify-content: space-between; align-items: center; margin-top: -2px;
}
.checkbox-label[data-v-4e7235a5] { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--muted); cursor: pointer;
}
.checkbox-input[data-v-4e7235a5] { width: 16px; height: 16px; cursor: pointer; accent-color: var(--violet);
}
.forgot-link[data-v-4e7235a5] { font-size: 14px; color: var(--violet); text-decoration: none; font-weight: 600;
}
.forgot-link[data-v-4e7235a5]:hover { text-decoration: underline;
}
.btn-submit[data-v-4e7235a5] { width: 100%; padding: 14px 24px; background: var(--violet); color: #fff; border: none; border-radius: var(--pill); font-size: 16px; font-weight: 600; cursor: pointer; transition: all 0.2s ease; margin-top: 6px; box-shadow: 0 16px 30px -16px rgba(43,130,240,0.6);
}
.btn-submit[data-v-4e7235a5]:hover:not(:disabled) { background: var(--violet-hover); transform: translateY(-2px);
}
.btn-submit[data-v-4e7235a5]:disabled { opacity: 0.6; cursor: not-allowed; transform: none;
}
.auth-footer[data-v-4e7235a5] { margin-top: 22px; text-align: center; font-size: 14px; color: var(--muted);
}
.auth-link[data-v-4e7235a5] { color: var(--violet); text-decoration: none; font-weight: 600;
}
.auth-link[data-v-4e7235a5]:hover { text-decoration: underline;
}

/* brand side */
.auth-brand[data-v-4e7235a5] { position: relative; background: var(--dark); color: #fff; overflow: hidden; display: flex; align-items: center;
}
.brand-glow[data-v-4e7235a5] { position: absolute; left: 50%; top: 42%; width: 720px; height: 720px; transform: translate(-50%, -50%); background: radial-gradient(circle, rgba(43,130,240,0.32), rgba(43,130,240,0) 62%); pointer-events: none;
}
.brand-content[data-v-4e7235a5] { position: relative; z-index: 1; padding: 64px 72px; max-width: 520px;
}
.brand-logo[data-v-4e7235a5] { display: flex; align-items: center; gap: 12px; margin-bottom: 40px;
}
.brand-logo-tile[data-v-4e7235a5] { width: 44px; height: 44px; border-radius: 12px; background: #fff; display: inline-flex; align-items: center; justify-content: center;
}
.brand-logo-tile img[data-v-4e7235a5] { width: 26px; height: 26px;
}
.brand-name[data-v-4e7235a5] { font-size: 18px; font-weight: 700; letter-spacing: -0.01em;
}
.brand-title[data-v-4e7235a5] { color: #fff; font-size: clamp(30px, 3vw, 42px); font-weight: 600; letter-spacing: -0.035em; line-height: 1.1; margin: 0 0 16px;
}
.brand-sub[data-v-4e7235a5] { font-size: 17px; color: rgba(255,255,255,0.62); line-height: 1.55; margin: 0 0 34px; max-width: 38ch;
}
.brand-points[data-v-4e7235a5] { list-style: none; margin: 0 0 36px; padding: 0; display: flex; flex-direction: column; gap: 16px;
}
.brand-points li[data-v-4e7235a5] { display: flex; align-items: center; gap: 14px; font-size: 15.5px; font-weight: 500; color: rgba(255,255,255,0.92);
}
.bp-tick[data-v-4e7235a5] { width: 26px; height: 26px; border-radius: 50%; background: rgba(43,130,240,0.25); color: #8fc6ff; display: inline-flex; align-items: center; justify-content: center; font-size: 11px; flex-shrink: 0;
}
.brand-trust[data-v-4e7235a5] { font-size: 13px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: rgba(255,255,255,0.45);
}
@media (max-width: 900px) {
.auth-split[data-v-4e7235a5] { grid-template-columns: 1fr;
}
.auth-brand[data-v-4e7235a5] { display: none;
}
}

.auth-page[data-v-48478abf] { min-height: 100vh; background: var(--bg);
}
.auth-split[data-v-48478abf] { display: grid; grid-template-columns: 1fr 1fr; min-height: 100vh;
}

/* form side */
.auth-form-side[data-v-48478abf] { display: flex; align-items: center; justify-content: center; padding: 40px 24px;
}
.auth-card[data-v-48478abf] { width: 100%; max-width: 420px; background: transparent;
}
.auth-logo[data-v-48478abf] { display: flex; justify-content: center; margin-bottom: 24px;
}
.auth-logo img[data-v-48478abf] { height: 38px;
}
.auth-header[data-v-48478abf] { text-align: center; margin-bottom: 26px;
}
.auth-title[data-v-48478abf] { font-size: 30px; font-weight: 700; letter-spacing: -0.03em; color: var(--ink); margin: 0 0 8px;
}
.auth-subtitle[data-v-48478abf] { font-size: 15px; color: var(--muted); margin: 0;
}
.alert[data-v-48478abf] { display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-radius: 12px; margin-bottom: 20px; font-size: 14px; font-weight: 500;
}
.alert-error[data-v-48478abf] { background: #fef2f2; color: #dc2626; border: 1px solid #fecaca;
}
.alert svg[data-v-48478abf] { flex-shrink: 0;
}
.btn-google[data-v-48478abf] { display: flex; align-items: center; justify-content: center; gap: 12px; width: 100%; padding: 14px 24px; background: #fff; border: 1px solid var(--line); border-radius: var(--pill); font-size: 15px; font-weight: 600; color: var(--ink); text-decoration: none; transition: all 0.2s ease; cursor: pointer;
}
.btn-google[data-v-48478abf]:hover { border-color: #cbd5e1; transform: translateY(-2px); box-shadow: 0 14px 30px -18px rgba(31,41,51,0.35);
}
.google-icon[data-v-48478abf] { width: 20px; height: 20px;
}
.divider[data-v-48478abf] { display: flex; align-items: center; margin: 20px 0; color: var(--muted); font-size: 14px;
}
.divider[data-v-48478abf]::before, .divider[data-v-48478abf]::after { content: ''; flex: 1; height: 1px; background: var(--line);
}
.divider span[data-v-48478abf] { padding: 0 16px;
}
.auth-form[data-v-48478abf] { display: flex; flex-direction: column; gap: 16px;
}
.form-group[data-v-48478abf] { display: flex; flex-direction: column; gap: 7px;
}
.form-label[data-v-48478abf] { font-size: 13.5px; font-weight: 600; color: var(--ink);
}
.form-input[data-v-48478abf] { width: 100%; padding: 12px 16px; border: 1px solid var(--line); border-radius: 12px; font-size: 15px; color: var(--ink); background: #fbfbfd; transition: all 0.2s ease; font-family: inherit;
}
.form-input[data-v-48478abf]:focus { outline: none; border-color: var(--violet); box-shadow: 0 0 0 3px rgba(43,130,240,0.12); background: #fff;
}
.form-input[data-v-48478abf]:disabled { background: #f1f3f6; cursor: not-allowed;
}
.form-hint[data-v-48478abf] { font-size: 12px; color: var(--muted); margin: 0;
}
.password-input-wrapper[data-v-48478abf] { position: relative;
}
.password-toggle[data-v-48478abf] { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); background: none; border: none; color: var(--muted); cursor: pointer; padding: 8px; display: flex; transition: color 0.2s ease;
}
.password-toggle[data-v-48478abf]:hover { color: var(--violet);
}
.checkbox-label[data-v-48478abf] { display: flex; align-items: flex-start; gap: 9px; font-size: 13.5px; color: var(--muted); cursor: pointer; line-height: 1.5;
}
.checkbox-input[data-v-48478abf] { width: 16px; height: 16px; cursor: pointer; accent-color: var(--violet); margin-top: 2px; flex-shrink: 0;
}
.inline-link[data-v-48478abf] { color: var(--violet); text-decoration: none; font-weight: 600;
}
.inline-link[data-v-48478abf]:hover { text-decoration: underline;
}
.btn-submit[data-v-48478abf] { width: 100%; padding: 14px 24px; background: var(--violet); color: #fff; border: none; border-radius: var(--pill); font-size: 16px; font-weight: 600; cursor: pointer; transition: all 0.2s ease; margin-top: 4px; box-shadow: 0 16px 30px -16px rgba(43,130,240,0.6);
}
.btn-submit[data-v-48478abf]:hover:not(:disabled) { background: var(--violet-hover); transform: translateY(-2px);
}
.btn-submit[data-v-48478abf]:disabled { opacity: 0.6; cursor: not-allowed; transform: none;
}
.auth-footer[data-v-48478abf] { margin-top: 20px; text-align: center; font-size: 14px; color: var(--muted);
}
.auth-link[data-v-48478abf] { color: var(--violet); text-decoration: none; font-weight: 600;
}
.auth-link[data-v-48478abf]:hover { text-decoration: underline;
}

/* brand side */
.auth-brand[data-v-48478abf] { position: relative; background: var(--dark); color: #fff; overflow: hidden; display: flex; align-items: center;
}
.brand-glow[data-v-48478abf] { position: absolute; left: 50%; top: 42%; width: 720px; height: 720px; transform: translate(-50%, -50%); background: radial-gradient(circle, rgba(43,130,240,0.32), rgba(43,130,240,0) 62%); pointer-events: none;
}
.brand-content[data-v-48478abf] { position: relative; z-index: 1; padding: 64px 72px; max-width: 520px;
}
.brand-logo[data-v-48478abf] { display: flex; align-items: center; gap: 12px; margin-bottom: 40px;
}
.brand-logo-tile[data-v-48478abf] { width: 44px; height: 44px; border-radius: 12px; background: #fff; display: inline-flex; align-items: center; justify-content: center;
}
.brand-logo-tile img[data-v-48478abf] { width: 26px; height: 26px;
}
.brand-name[data-v-48478abf] { font-size: 18px; font-weight: 700; letter-spacing: -0.01em;
}
.brand-title[data-v-48478abf] { color: #fff; font-size: clamp(30px, 3vw, 42px); font-weight: 600; letter-spacing: -0.035em; line-height: 1.1; margin: 0 0 16px;
}
.brand-sub[data-v-48478abf] { font-size: 17px; color: rgba(255,255,255,0.62); line-height: 1.55; margin: 0 0 34px; max-width: 40ch;
}
.brand-points[data-v-48478abf] { list-style: none; margin: 0 0 36px; padding: 0; display: flex; flex-direction: column; gap: 16px;
}
.brand-points li[data-v-48478abf] { display: flex; align-items: center; gap: 14px; font-size: 15.5px; font-weight: 500; color: rgba(255,255,255,0.92);
}
.bp-tick[data-v-48478abf] { width: 26px; height: 26px; border-radius: 50%; background: rgba(43,130,240,0.25); color: #8fc6ff; display: inline-flex; align-items: center; justify-content: center; font-size: 11px; flex-shrink: 0;
}
.brand-trust[data-v-48478abf] { font-size: 13px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: rgba(255,255,255,0.45);
}
@media (max-width: 900px) {
.auth-split[data-v-48478abf] { grid-template-columns: 1fr;
}
.auth-brand[data-v-48478abf] { display: none;
}
}

.auth-page[data-v-d9a1b4eb] {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%);
  padding: 20px;
}
.auth-container[data-v-d9a1b4eb] {
  width: 100%;
  max-width: 440px;
}
.auth-card[data-v-d9a1b4eb] {
  background: white;
  border-radius: 20px;
  padding: 48px 40px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
}
.auth-logo[data-v-d9a1b4eb] {
  text-align: center;
  margin-bottom: 32px;
}
.auth-logo img[data-v-d9a1b4eb] {
  height: 40px;
}
.auth-header[data-v-d9a1b4eb] {
  text-align: center;
  margin-bottom: 32px;
}
.auth-title[data-v-d9a1b4eb] {
  font-size: 28px;
  font-weight: 700;
  color: #1e293b;
  margin: 0 0 8px 0;
}
.auth-subtitle[data-v-d9a1b4eb] {
  font-size: 15px;
  color: #64748b;
  margin: 0;
}
.alert[data-v-d9a1b4eb] {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-radius: 10px;
  margin-bottom: 24px;
  font-size: 14px;
  font-weight: 500;
}
.alert-error[data-v-d9a1b4eb] {
  background: #fef2f2;
  color: #dc2626;
  border: 1px solid #fecaca;
}
.alert-success[data-v-d9a1b4eb] {
  background: #f0fdf4;
  color: #16a34a;
  border: 1px solid #bbf7d0;
}
.alert svg[data-v-d9a1b4eb] {
  flex-shrink: 0;
}
.auth-form[data-v-d9a1b4eb] {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.form-group[data-v-d9a1b4eb] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.form-label[data-v-d9a1b4eb] {
  font-size: 14px;
  font-weight: 600;
  color: #334155;
}
.form-input[data-v-d9a1b4eb] {
  width: 100%;
  padding: 12px 16px;
  border: 2px solid #e2e8f0;
  border-radius: 10px;
  font-size: 15px;
  color: #1e293b;
  transition: all 0.2s ease;
}
.form-input[data-v-d9a1b4eb]:focus {
  outline: none;
  border-color: #0ea5e9;
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.form-input[data-v-d9a1b4eb]:disabled {
  background: #f8fafc;
  cursor: not-allowed;
}
.btn-submit[data-v-d9a1b4eb] {
  width: 100%;
  padding: 14px 24px;
  background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%);
  color: white;
  border: none;
  border-radius: 10px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  margin-top: 8px;
}
.btn-submit[data-v-d9a1b4eb]:hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(14, 165, 233, 0.4);
}
.btn-submit[data-v-d9a1b4eb]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none;
}
.success-state[data-v-d9a1b4eb] {
  text-align: center;
}
.success-icon[data-v-d9a1b4eb] {
  width: 80px;
  height: 80px;
  margin: 0 auto 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%);
  border-radius: 50%;
  color: white;
  font-size: 36px;
}
.success-text[data-v-d9a1b4eb] {
  font-size: 15px;
  color: #334155;
  line-height: 1.6;
  margin: 0 0 16px 0;
}
.success-text strong[data-v-d9a1b4eb] {
  color: #0ea5e9;
  font-weight: 600;
}
.success-hint[data-v-d9a1b4eb] {
  font-size: 14px;
  color: #64748b;
  line-height: 1.6;
  margin: 0;
}
.resend-btn[data-v-d9a1b4eb] {
  background: none;
  border: none;
  color: #0ea5e9;
  font-weight: 600;
  cursor: pointer;
  padding: 0;
  text-decoration: underline;
}
.resend-btn[data-v-d9a1b4eb]:hover:not(:disabled) {
  color: #0284c7;
}
.resend-btn[data-v-d9a1b4eb]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.auth-footer[data-v-d9a1b4eb] {
  margin-top: 24px;
  text-align: center;
}
.back-link[data-v-d9a1b4eb] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #0ea5e9;
  text-decoration: none;
  font-weight: 600;
  font-size: 14px;
  transition: color 0.2s ease;
}
.back-link[data-v-d9a1b4eb]:hover {
  color: #0284c7;
}
@media (max-width: 480px) {
.auth-card[data-v-d9a1b4eb] {
    padding: 32px 24px;
}
.auth-title[data-v-d9a1b4eb] {
    font-size: 24px;
}
}

.auth-page[data-v-6f9b48db] {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%);
  padding: 20px;
}
.auth-container[data-v-6f9b48db] {
  width: 100%;
  max-width: 440px;
}
.auth-card[data-v-6f9b48db] {
  background: white;
  border-radius: 20px;
  padding: 48px 40px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
}
.auth-logo[data-v-6f9b48db] {
  text-align: center;
  margin-bottom: 32px;
}
.auth-logo img[data-v-6f9b48db] {
  height: 40px;
}
.auth-header[data-v-6f9b48db] {
  text-align: center;
  margin-bottom: 32px;
}
.auth-title[data-v-6f9b48db] {
  font-size: 28px;
  font-weight: 700;
  color: #1e293b;
  margin: 0 0 8px 0;
}
.auth-subtitle[data-v-6f9b48db] {
  font-size: 15px;
  color: #64748b;
  margin: 0;
}
.alert[data-v-6f9b48db] {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-radius: 10px;
  margin-bottom: 24px;
  font-size: 14px;
  font-weight: 500;
}
.alert-error[data-v-6f9b48db] {
  background: #fef2f2;
  color: #dc2626;
  border: 1px solid #fecaca;
}
.alert svg[data-v-6f9b48db] {
  flex-shrink: 0;
}
.auth-form[data-v-6f9b48db] {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.form-group[data-v-6f9b48db] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.form-label[data-v-6f9b48db] {
  font-size: 14px;
  font-weight: 600;
  color: #334155;
}
.form-input[data-v-6f9b48db] {
  width: 100%;
  padding: 12px 16px;
  border: 2px solid #e2e8f0;
  border-radius: 10px;
  font-size: 15px;
  color: #1e293b;
  transition: all 0.2s ease;
}
.form-input[data-v-6f9b48db]:focus {
  outline: none;
  border-color: #0ea5e9;
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.form-input[data-v-6f9b48db]:disabled {
  background: #f8fafc;
  cursor: not-allowed;
}
.form-hint[data-v-6f9b48db] {
  font-size: 13px;
  color: #94a3b8;
  margin: 0;
}
.password-input-wrapper[data-v-6f9b48db] {
  position: relative;
}
.password-toggle[data-v-6f9b48db] {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: #94a3b8;
  cursor: pointer;
  padding: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.2s ease;
}
.password-toggle[data-v-6f9b48db]:hover {
  color: #0ea5e9;
}
.btn-submit[data-v-6f9b48db] {
  width: 100%;
  padding: 14px 24px;
  background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%);
  color: white;
  border: none;
  border-radius: 10px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  margin-top: 8px;
}
.btn-submit[data-v-6f9b48db]:hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(14, 165, 233, 0.4);
}
.btn-submit[data-v-6f9b48db]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none;
}
.auth-footer[data-v-6f9b48db] {
  margin-top: 24px;
  text-align: center;
}
.back-link[data-v-6f9b48db] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #0ea5e9;
  text-decoration: none;
  font-weight: 600;
  font-size: 14px;
  transition: color 0.2s ease;
}
.back-link[data-v-6f9b48db]:hover {
  color: #0284c7;
}
@media (max-width: 480px) {
.auth-card[data-v-6f9b48db] {
    padding: 32px 24px;
}
.auth-title[data-v-6f9b48db] {
    font-size: 24px;
}
}

.navigation[data-v-96a9d97a] {
  background: rgba(244, 243, 248, 0.8);
  -webkit-backdrop-filter: saturate(160%) blur(16px);
  backdrop-filter: saturate(160%) blur(16px);
  border-bottom: 1px solid rgba(31, 41, 51, 0.08);
  position: sticky;
  top: 0;
  z-index: 100;
  box-shadow: none;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  letter-spacing: -0.01em;
}
.navigation a[data-v-96a9d97a], .navigation button[data-v-96a9d97a], .navigation select[data-v-96a9d97a] { font-family: inherit;
}
.nav-container[data-v-96a9d97a] {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 64px;
}
.nav-left[data-v-96a9d97a] {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 24px;
}
.nav-logo[data-v-96a9d97a] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  text-decoration: none;
  transition: opacity 0.2s ease;
}
.nav-logo[data-v-96a9d97a]:hover {
  opacity: 0.8;
}
.logo-icon[data-v-96a9d97a] {
  width: 32px;
  height: 32px;
  flex-shrink: 0;
}
.logo-text[data-v-96a9d97a] {
  height: 20px;
  flex-shrink: 0;
}
.nav-center[data-v-96a9d97a] {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
.nav-link[data-v-96a9d97a] {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 10px 18px;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 600;
  color: var(--gray);
  text-decoration: none;
  transition: all 0.2s ease;
}
.nav-link[data-v-96a9d97a]:hover {
  background: var(--light-gray);
  color: var(--dark);
}
.nav-link[data-v-96a9d97a] {
  border-radius: 11px;
}
.nav-link.active[data-v-96a9d97a] {
  background: rgba(43, 130, 240, 0.1);
  color: #2b82f0;
  box-shadow: none;
}
.nav-link svg[data-v-96a9d97a] {
  display: none;
}
.nav-right[data-v-96a9d97a] {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 16px;
}
.user-info[data-v-96a9d97a] {
  padding: 9px 16px;
  background: rgba(43, 130, 240, 0.1);
  border-radius: 11px;
}
.user-name[data-v-96a9d97a] {
  font-size: 14px;
  font-weight: 600;
  color: #2b82f0;
}
.btn-icon[data-v-96a9d97a] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background: #fff;
  border: 1px solid rgba(31, 41, 51, 0.08);
  border-radius: 11px;
  color: var(--gray);
  cursor: pointer;
  transition: all 0.2s ease;
  text-decoration: none;
}
.btn-icon[data-v-96a9d97a]:hover {
  background: #fff;
  border-color: #2b82f0;
  color: #2b82f0;
  transform: translateY(-1px);
}
.btn-icon svg[data-v-96a9d97a] {
  flex-shrink: 0;
}
button.btn-icon[data-v-96a9d97a]:hover {
  background: var(--danger-light);
  border-color: var(--danger-lighter);
  color: var(--danger);
}

/* Hamburger Button */
.hamburger-btn[data-v-96a9d97a] {
  display: none;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background: #fff;
  border: 1px solid rgba(31, 41, 51, 0.08);
  border-radius: 11px;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 18px;
  color: var(--dark);
}
.hamburger-btn[data-v-96a9d97a]:hover {
  background: #fff;
  border-color: #2b82f0;
  color: #2b82f0;
}

/* Mobile Menu Overlay */
.mobile-menu-overlay[data-v-96a9d97a] {
  display: none;
  position: fixed;
  top: 60px;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 998;
}

/* Mobile Menu */
.mobile-menu[data-v-96a9d97a] {
  display: none;
  position: fixed;
  top: 60px;
  right: -100%;
  width: 280px;
  height: calc(100vh - 60px);
  background: white;
  box-shadow: -2px 0 8px rgba(0, 0, 0, 0.1);
  transition: right 0.3s ease;
  z-index: 999;
  overflow-y: auto;
}
.mobile-menu.open[data-v-96a9d97a] {
  right: 0;
}
.mobile-menu-header[data-v-96a9d97a] {
  padding: 20px;
  border-bottom: 1px solid var(--border);
  background: linear-gradient(135deg, var(--primary) 0%, #3b82f6 100%);
}
.user-info-mobile[data-v-96a9d97a] {
  display: flex;
  align-items: center;
  gap: 12px;
  color: white;
}
.user-icon[data-v-96a9d97a] {
  font-size: 32px;
  flex-shrink: 0;
}
.user-info-mobile .user-name[data-v-96a9d97a] {
  font-size: 16px;
  font-weight: 600;
  color: white;
}
.mobile-menu-items[data-v-96a9d97a] {
  padding: 16px 0;
}
.mobile-menu-item[data-v-96a9d97a] {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 20px;
  color: var(--text-primary);
  text-decoration: none;
  font-size: 15px;
  font-weight: 500;
  transition: all 0.2s ease;
  border: none;
  background: none;
  width: 100%;
  text-align: left;
  cursor: pointer;
}
.mobile-menu-item[data-v-96a9d97a]:hover {
  background: var(--light-gray);
}
.mobile-menu-item svg[data-v-96a9d97a] {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  color: var(--gray);
}
.mobile-menu-item.router-link-active[data-v-96a9d97a] {
  background: var(--primary-light);
  color: var(--primary);
}
.mobile-menu-item.router-link-active svg[data-v-96a9d97a] {
  color: var(--primary);
}
.logout-btn[data-v-96a9d97a] {
  margin-top: 8px;
  border-top: 1px solid var(--border);
  padding-top: 24px;
  color: var(--danger);
}
.logout-btn svg[data-v-96a9d97a] {
  color: var(--danger);
}
.logout-btn[data-v-96a9d97a]:hover {
  background: var(--danger-light);
}

/* Responsive */
@media (max-width: 768px) {
.nav-container[data-v-96a9d97a] {
    padding: 0 12px;
    height: 60px;
}
.nav-left[data-v-96a9d97a] {
    flex: 0 0 auto;
    gap: 16px;
}
.logo-icon[data-v-96a9d97a] {
    width: 28px;
    height: 28px;
}
.logo-text[data-v-96a9d97a] {
    height: 18px;
}
.nav-logo[data-v-96a9d97a] {
    font-size: 16px;
}
.nav-center[data-v-96a9d97a] {
    flex: 1;
    justify-content: flex-start;
    gap: 4px;
    margin-left: 12px;
}
.nav-link[data-v-96a9d97a] {
    padding: 8px 12px;
    font-size: 13px;
}
.nav-right[data-v-96a9d97a] {
    display: none;
}
.hamburger-btn[data-v-96a9d97a] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 33px !important;
    height: 33px !important;
    padding: 0 !important;
    font-size: 16px !important;
}
.mobile-menu-overlay[data-v-96a9d97a] {
    display: block;
}
.mobile-menu[data-v-96a9d97a] {
    display: block;
}
.btn-icon[data-v-96a9d97a] {
    width: 36px;
    height: 36px;
}
.btn-icon svg[data-v-96a9d97a] {
    width: 18px;
    height: 18px;
}
}

.app-wrapper {
  min-height: 100vh;
  background: var(--bg-gray);
}
.app-content {
  min-height: 100vh;
}
@keyframes fadeOut{from{opacity:1}to{opacity:0}}.v-toast--fade-out{animation-name:fadeOut}@keyframes fadeInDown{from{opacity:0;transform:translate3d(0, -100%, 0)}to{opacity:1;transform:none}}.v-toast--fade-in-down{animation-name:fadeInDown}@keyframes fadeInUp{from{opacity:0;transform:translate3d(0, 100%, 0)}to{opacity:1;transform:none}}.v-toast--fade-in-up{animation-name:fadeInUp}.fade-enter-active,.fade-leave-active{transition:opacity 150ms ease-out}.fade-enter,.fade-leave-to{opacity:0}.v-toast{position:fixed;display:flex;top:0;bottom:0;left:0;right:0;padding:2em;overflow:hidden;z-index:1090;pointer-events:none}.v-toast__item{display:inline-flex;align-items:center;animation-duration:150ms;margin:.5em 0;box-shadow:0 1px 4px rgba(0,0,0,.12),0 0 6px rgba(0,0,0,.04);border-radius:.25em;pointer-events:auto;opacity:.92;color:#fff;min-height:3em;cursor:pointer}.v-toast__item--success{background-color:#28a745}.v-toast__item--info{background-color:#17a2b8}.v-toast__item--warning{background-color:#ffc107}.v-toast__item--error{background-color:#dc3545}.v-toast__item--default{background-color:#343a40}.v-toast__item--warning{color:#000}.v-toast__item.v-toast__item--top,.v-toast__item.v-toast__item--bottom{align-self:center}.v-toast__item.v-toast__item--top-right,.v-toast__item.v-toast__item--bottom-right{align-self:flex-end}.v-toast__item.v-toast__item--top-left,.v-toast__item.v-toast__item--bottom-left{align-self:flex-start}.v-toast__text{margin:0;padding:.5em 1em;word-break:break-word}.v-toast__icon{display:none}.v-toast.v-toast--top{flex-direction:column}.v-toast.v-toast--bottom{flex-direction:column-reverse}.v-toast.v-toast--custom-parent{position:absolute}@media screen and (max-width: 768px){.v-toast{padding:0;position:fixed !important}}.v-toast__item{opacity:1;min-height:4em}.v-toast__item .v-toast__text{padding:1.5em 1em}.v-toast__item .v-toast__icon{display:block;width:27px;min-width:27px;height:27px;margin-left:1em;background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 45.999 45.999'%3e %3cpath fill='%23fff' d='M39.264 6.736c-8.982-8.981-23.545-8.982-32.528 0-8.982 8.982-8.981 23.545 0 32.528 8.982 8.98 23.545 8.981 32.528 0 8.981-8.983 8.98-23.545 0-32.528zM25.999 33a3 3 0 11-6 0V21a3 3 0 116 0v12zm-3.053-17.128c-1.728 0-2.88-1.224-2.844-2.735-.036-1.584 1.116-2.771 2.879-2.771 1.764 0 2.88 1.188 2.917 2.771-.001 1.511-1.152 2.735-2.952 2.735z'/%3e %3c/svg%3e") no-repeat}[dir=rtl] .v-toast__item .v-toast__icon{margin-left:unset;margin-right:1em}.v-toast__item.v-toast__item--success .v-toast__icon{background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 52'%3e %3cpath fill='%23fff' d='M26 0C11.664 0 0 11.663 0 26s11.664 26 26 26 26-11.663 26-26S40.336 0 26 0zm14.495 17.329l-16 18a1.997 1.997 0 01-2.745.233l-10-8a2 2 0 012.499-3.124l8.517 6.813L37.505 14.67a2.001 2.001 0 012.99 2.659z'/%3e %3c/svg%3e") no-repeat}.v-toast__item.v-toast__item--error .v-toast__icon{background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 51.976 51.976'%3e %3cpath fill='%23fff' d='M44.373 7.603c-10.137-10.137-26.632-10.138-36.77 0-10.138 10.138-10.137 26.632 0 36.77s26.632 10.138 36.77 0c10.137-10.138 10.137-26.633 0-36.77zm-8.132 28.638a2 2 0 01-2.828 0l-7.425-7.425-7.778 7.778a2 2 0 11-2.828-2.828l7.778-7.778-7.425-7.425a2 2 0 112.828-2.828l7.425 7.425 7.071-7.071a2 2 0 112.828 2.828l-7.071 7.071 7.425 7.425a2 2 0 010 2.828z'/%3e %3c/svg%3e") no-repeat}.v-toast__item.v-toast__item--warning .v-toast__icon{background:url("data:image/svg+xml,%3csvg viewBox='0 0 52 52' xmlns='http://www.w3.org/2000/svg'%3e %3cpath fill='%23000' d='M49.466 41.26L29.216 6.85c-.69-1.16-1.89-1.85-3.22-1.85-1.32 0-2.53.69-3.21 1.85L2.536 41.26c-.71 1.2-.72 2.64-.03 3.85.68 1.18 1.89 1.89 3.24 1.89h40.51c1.35 0 2.56-.71 3.23-1.89.7-1.21.69-2.65-.02-3.85zm-25.53-21.405h3.381v3.187l-.724 8.92H24.66l-.725-8.92v-3.187zm2.97 17.344a1.712 1.712 0 01-1.267.543c-.491 0-.914-.181-1.268-.543a1.788 1.788 0 01-.531-1.297c0-.502.176-.935.53-1.297a1.712 1.712 0 011.269-.544c.49 0 .914.181 1.268.544s.53.795.53 1.297c0 .503-.176.934-.53 1.297z'/%3e %3c/svg%3e") no-repeat}
