@import url('./global.css');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@500&display=swap');

:root {
    --bgcolor: #D9D9D9;
}

/* Base */
* { box-sizing: border-box; }

html, body { height: 100%; }

body {
margin: 0;
font-family: 'Montserrat', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
color: var(--brand-text);
background: var(--bgcolor);
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}

body {
  font-style: normal;
  line-height: 1.5;
  font-weight: 400;
  color: #232323;
  position: relative;
  font-family:Montserrat,system-ui !important;  
}


.wideContainer {
    position: relative;
    max-width: 1200px;
    width: 1200px;
    margin: auto; 
}
@media (max-width: 1250px) {
    .wideContainer {
        width: 95%;
        padding-left: 0px;
        padding-right: 0px;
    }

    .tab-content {
        padding: 0px !important;
        padding-top: 3rem !important;
    }
}

.container {
    position: relative;
    max-width: 900px;
    margin: auto;
}


.whiteContainer {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-radius: 6px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(166, 60, 6, 0.1);
}

footer {
    background-color: var(--bgcolor);
    
    margin-top: 40px;
}

.container h2 {
    margin-top: 20px;
    margin-bottom: 20px;
}

footer ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    justify-content: center;
}

footer ul li a{
    margin: 0;
    font-size: 14px;
    text-decoration: none;
    color: black;

}

a {
    text-decoration: none;
}

a:hover {
    color: black;
    filter: brightness(1.2);
}



button{
    font-family: inherit;
    z-index: 100;
    user-select: none;
    background-color: var(--ui-primary-500);
    color: white;
    border-radius: var(--button-corner-radius);
    border: none;
    font-size: 0.875rem;
    font-weight: var(--u-i-button-headline-weight);
    display: flex;
    justify-content: center;
    align-items: center;
    height: var(--button-s-height);
    padding-left: calc(var(--element-padding) + 10px);
    padding-right: calc(var(--element-padding) + 10px);    
    transition: filter 0.2s ease;
    cursor: pointer;
    line-height: 12px;
}

button svg {
    width: 16px;
    height: 16px;
    margin-right: 8px;
    fill: white;;
}



button:hover{
    filter: brightness(1.2) !important;
}

button.secondary {
    background-color: var(--secondaryButtons);
    color: var(--secondaryButtonsTxtColor);
}



.navbar-section {
    background-color: var(--bgcolor);
}
.navbar {
    display: flex; 
    justify-content: space-between; 
    align-items: center; 
    padding: 10px 0;    
    
}
.navbar-logo {
    display: flex;
    align-items: center;
}
.navbar-logo img {
    height: 50px;
    width: auto;
    transition: all 0.3s ease;
}
.navbar-actions {
    display: flex;
    align-items: center;
    gap: 1rem;
}

@media (max-width: 1250px) {
    .navbar {
        padding-right: 10px;
        padding-left: 10px;
    }
}

@media (max-width: 1000px) {
    .remove-when-mobile {
        display: none;
    }
    
}

@media (max-width: 600px) {
    .navbar-actions {
        display: flex;
        padding-top: 20px;
        text-align: center;
        width: 100vw;
        justify-content: space-around;
    }
    
}

.subnavbar-container {
    margin-top: -30px;
}

.nav-link {
    background-color: var(--primaryButtons);
    color: white;
    display: inline-flex;
    height: 30px;
    padding: 10px;
    width: calc(100% - 10px);
    margin-right: 8px;
    font-size: 14px;    
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
    border: none !important;
    justify-content: left !important;
}

.nav-link.active {
    background-color: var(--bgcolor) !important;
    border: none !important;
    
}



.nav-link:hover {
    filter: brightness(1.2) !important;
    border: none;
    color: inherit;
}

.nav-tabs {
    position: absolute;
    bottom: 1px;
    left: 50%;
    transform: translateX(-50%);
    width: 850px;    
    border-bottom: none;
}

.nav-item {
    width: 19%;
    margin-bottom: -0.5px;
}

.nav-item:nth-last-child(1),.nav-item:nth-last-child(2) {
    width: 11.5%;
    margin-bottom: -0.5px;
}

/* Falcon Store mypage tabs — fit all on one line, sized to content */
#mypageTab {
    width: auto;
    max-width: 98%;
    flex-wrap: nowrap;
    justify-content: center;
}

#mypageTab .nav-item {
    width: auto;
}

#mypageTab .nav-link {
    width: auto;
    white-space: nowrap;
    padding: 10px 16px;
    margin-right: 6px;
    justify-content: center !important;
}



.mobile-nav-wrap {
  position: absolute;
  bottom: 17px;
  z-index: 20;
}

.mobile-nav-menu-container {
    position: absolute;
    top: calc(100% + 8px);
    background: white;
    padding: 8px;
    border-radius: 6px;
    width: 80vw;
}

.mobile-nav-menu-container button {
    width: 100%;
    text-align: left;
    margin-bottom: 6px;
}

.hero {
    position: relative;
    background-color: black;
    height: 250px;
    padding-top: 20px;    
    color: white;
    background-image: url(/img/falcon-play-dark-03.png);
    background-size: cover;
}


.loginhero {
    height: auto;
    min-height: 100vh;
    color: black;
}

.loginhero button {
    width: 100%;
    text-align: center;
}

.hero-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: left;
    width: 100%;
}    

  .tab-content {
    position: relative;
    background: var(--bgcolor); 
    margin-top: -1px; 
    padding: 3rem 2rem;
    margin-left: auto; 
    margin-right: auto;
  }

  .error-message { background: var(--error-bg); border: 1px solid var(--error-border); color: var(--error-color); padding: .75rem 1rem; border-radius: 8px; font-weight: 500; margin-bottom: 1rem; }
  .forgot-link { color: var(--brand-primary); font-weight: 500; }
  .forgot-link:hover { text-decoration: underline; }

  /* Login page small helpers */
  .brand-icon { width: 60px; height: 60px; background: var(--brand-primary); border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 1rem; box-shadow: 0 8px 20px rgba(0,0,0,.15); }
  .brand-icon svg { width: 30px; height: 30px; fill: #fff; }
  .or-divider { position: relative; text-align: center; overflow: hidden; }
  .or-divider::before, .or-divider::after { content: ""; position: absolute; top: 50%; width: 45%; height: 1px; background: linear-gradient(90deg, transparent, var(--brand-border), transparent); }
  .or-divider::before { left: 0; }
  .or-divider::after { right: 0; }
  .or-divider span { padding: 0 1.5rem; color: var(--brand-text-muted); font-weight: 500; font-size: .875rem; text-transform: uppercase; letter-spacing: 1px; position: relative; z-index: 1; }


  .status-pill { display: flex; margin-top: 10px; justify-content: space-between; align-items: center; gap: 1rem;padding: 1rem; border-radius: 6px; margin-bottom: 1.5rem; }
  .status-pill .status-dot { width: 12px; height: 12px; border-radius: 50%; box-shadow: 0 0 0 4px rgba(0,0,0,.08); }
  .status-pill .status-text { font-weight: 700; font-size: 1.125rem; }
  .status-pill.is-active { background: #d4edda; color: var(--ui-green-700); }
  .status-pill.is-active .status-dot { background: var(--ui-green-600); box-shadow: 0 0 0 4px rgba(0, 185, 98, 0.2); }
  .status-pill.is-free { background: var(--grayscale-gray-100); color: var(--grayscale-gray-600); }
  .status-pill.is-free .status-dot { background: var(--grayscale-gray-400); box-shadow: 0 0 0 4px rgba(0,0,0,.06); }

  .renew-box { padding: 1.25rem; border-radius: 12px; text-align: left; border-left: 4px solid var(--brand-border); background: var(--brand-light-bg); }
  .renew-box .renew-kicker { color: var(--brand-text-muted); font-size: .875rem; font-weight: 700; text-transform: uppercase; letter-spacing: .5px; margin-bottom: .4rem; }
  .renew-box .renew-date { color: var(--brand-text); font-size: 1.25rem; font-weight: 700; margin: 0 0 .1rem; }
  .renew-box .renew-timeleft { font-size: .875rem; font-weight: 700; }
  .renew-box.is-ok { border-left-color: var(--grayscale-gray-400); }
  .renew-box.is-warning { border-left-color: var(--ui-yellow-600); background: #fff9db; }
  .renew-box.is-warning .renew-timeleft { color: var(--ui-yellow-600); }
  .renew-box.is-danger { border-left-color: var(--ui-alert-500); background: var(--error-bg); }
  .renew-box.is-danger .renew-timeleft { color: var(--ui-alert-500); }

  .upgrade-card { margin-top: 3rem; background: linear-gradient(135deg, #fff5f5 0%, #ffe5e5 100%); padding: 2rem; border-radius: 16px; text-align: center; border-left: 4px solid var(--ui-orange-600); }
  .upgrade-card h2 { margin-bottom: .5rem; color: var(--ui-orange-600); font-weight: 700; }
  .upgrade-card p { color: var(--brand-text-muted); margin: 0; }

  /* Utilities */
  .hidden { display: none !important; }


  /* ── Falcon Play: Machine Cards ── */
  .fp-machine-card { background: #fff; border: 1px solid #e9ecef; border-radius: 10px; margin-bottom: 16px; overflow: hidden; transition: box-shadow .2s; }
  .fp-machine-card:hover { box-shadow: 0 4px 16px rgba(0,0,0,.06); }
  .fp-machine-header { display: flex; justify-content: space-between; align-items: center; padding: 16px 20px; cursor: pointer; user-select: none; gap: 12px; }
  .fp-machine-title { display: flex; align-items: center; gap: 12px; }
  .fp-machine-image { display: block; width: 84px; height: 52px; object-fit: contain; flex-shrink: 0; border-radius: 6px; background: #f7f7f7; }
  .fp-machine-title strong { font-size: 1.05rem; color: #222; display: block; }
  .fp-machine-id { font-size: 0.8rem; color: #888; font-family: monospace; }
  .fp-machine-dot { width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; }
  .fp-machine-dot.is-active { background: #28a745; box-shadow: 0 0 0 3px rgba(40,167,69,.2); }
  .fp-machine-dot.is-inactive { background: #dc3545; box-shadow: 0 0 0 3px rgba(220,53,69,.15); }
  .fp-machine-meta { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
  .fp-meta-text { font-size: 0.82rem; color: #888; white-space: nowrap; }
  .fp-arrow { font-size: 10px; color: #aaa; display: inline-block; transition: transform .2s; }
  .fp-badge { display: inline-block; padding: 2px 10px; border-radius: 12px; font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: .3px; }
  .fp-badge-active { background: #d4edda; color: #155724; }
  .fp-badge-expired { background: #f8d7da; color: #721c24; }
  .fp-badge-none { background: #e9ecef; color: #6c757d; }
  .fp-machine-body { padding: 0 20px 20px; border-top: 1px solid #f0f0f0; }
  .fp-section { margin-top: 20px; }
  .fp-section h4 { font-size: 0.95rem; font-weight: 700; color: #444; margin-bottom: 10px; text-transform: uppercase; letter-spacing: .5px; }
  .fp-detail-table { width: 100%; border-collapse: collapse; font-size: 0.875rem; }
  .fp-detail-table td, .fp-detail-table th { padding: 8px 10px; border-bottom: 1px solid #f0f0f0; vertical-align: top; }
  .fp-detail-table td:first-child { font-weight: 600; color: #555; white-space: nowrap; width: 140px; }
  .fp-detail-table th { font-weight: 600; color: #888; font-size: 0.78rem; text-transform: uppercase; letter-spacing: .4px; text-align: left; border-bottom: 2px solid #dee2e6; }
  .fp-config-table td:first-child { font-weight: 400; width: auto; }
  .fp-feature-tag { display: inline-block; padding: 2px 8px; margin: 2px 4px 2px 0; background: #e8f0fe; color: #1a73e8; border-radius: 4px; font-size: 0.78rem; font-weight: 500; }
  .fp-license-actions { display: flex; justify-content: center; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: 14px; }
  .fp-versions-container { padding: 10px 20px; background: #fafbfc; }
  .fp-versions-loading { padding: 10px; color: #888; font-size: 0.85rem; }
  .fp-versions-btn { background: none; border: 1px solid #ccc; border-radius: 4px; padding: 3px 10px; font-size: 0.78rem; color: #555; cursor: pointer; transition: all .15s; }
  .fp-versions-btn:hover { border-color: #888; color: #222; }

  /* ── Falcon Play: Product Cards ── */
  .fp-products-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 24px; }
  .fp-product-card { background: #fff; border: 1px solid #e9ecef; border-radius: 12px; padding: 32px 24px; text-align: center; transition: box-shadow .2s, transform .2s; display: flex; flex-direction: column; }
  .fp-product-card:hover { box-shadow: 0 8px 24px rgba(0,0,0,.08); transform: translateY(-2px); }
  .fp-product-icon { color: var(--ui-primary-500, #4331ed); margin-bottom: 16px; }
  .fp-product-card h3 { font-size: 1.2rem; font-weight: 700; color: #222; margin: 0 0 12px; }
  .fp-product-price { font-size: 1.6rem; font-weight: 800; color: #222; }
  .fp-product-price-sub { font-size: 0.82rem; color: #888; margin-bottom: 20px; }
  .fp-spec-list { text-align: left; margin-bottom: 20px; border-top: 1px solid #eee; padding-top: 12px; flex: 1; }
  .fp-spec-row { display: flex; justify-content: space-between; align-items: flex-start; padding: 6px 0; border-bottom: 1px solid #f2f2f2; font-size: 0.85rem; }
  .fp-spec-row:last-child { border-bottom: none; }
  .fp-spec-label { color: #666; flex-shrink: 0; padding-right: 10px; }
  .fp-spec-value { font-weight: 600; color: #333; text-align: right; }
  .fp-spec-check { width: 20px; height: 20px; color: #4caf50; }
  .fp-spec-sdi { flex-direction: column; gap: 4px; }
  .fp-spec-sdi .fp-spec-label { margin-bottom: 2px; }
  .fp-spec-sdi .fp-spec-value { text-align: left; }
  .fp-qty-row { display: flex; align-items: center; justify-content: center; gap: 0; margin-bottom: 12px; }
  .fp-qty-btn { width: 36px; height: 36px; border: 1px solid #ccc; background: #f8f9fa; font-size: 1.1rem; cursor: pointer; color: #333; display: flex; align-items: center; justify-content: center; transition: background .15s; }
  .fp-qty-btn:first-child { border-radius: 6px 0 0 6px; }
  .fp-qty-btn:last-child { border-radius: 0 6px 6px 0; }
  .fp-qty-btn:hover { background: #e9ecef; }
  .fp-qty-input { width: 50px; height: 36px; border: 1px solid #ccc; border-left: none; border-right: none; text-align: center; font-size: 1rem; font-weight: 600; -moz-appearance: textfield; }
  .fp-qty-input::-webkit-outer-spin-button, .fp-qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
  .fp-product-subtotal { font-size: 0.9rem; color: #555; margin-bottom: 16px; font-weight: 500; }
  .fp-buy-btn { display: inline-block; padding: 10px 32px; background: var(--ui-primary-500, #4331ed); color: #fff; border: none; border-radius: var(--button-corner-radius, 6px); font-size: 1rem; font-weight: 600; cursor: pointer; transition: background .2s, transform .15s; }
  .fp-buy-btn:hover { background: var(--ui-primary-600, #3525c7); transform: translateY(-1px); }

  @media (max-width: 767px) {
    .fp-machine-header { flex-direction: column; align-items: flex-start; gap: 8px; }
    .fp-machine-image { width: 72px; height: 45px; }
    .fp-machine-meta { flex-wrap: wrap; }
    .fp-detail-table td:first-child { width: auto; }
  }


  /* Plan list */

  .fr-wrap{margin:auto;}
  .fr-matrix{margin-top:22px;overflow-x:auto;padding-bottom:8px}
  .fr-table{border-collapse:separate;border-spacing:0;width:100%;min-width:880px;background:var(--panel);border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 32px rgba(0,0,0,.08)}
  .fr-thead th{position:sticky;text-align:center;top:0;background:#f1f3f6;border-bottom:1px solid #dee2e6;z-index:2;color:#222; width: 15%;}
  .fr-th,.fr-td{padding:16px 14px;text-align:left;vertical-align:middle}
  .fr-thead th:first-child{border-top-left-radius:var(--radius)}
  .fr-thead th:last-child{border-top-right-radius:var(--radius)}
  .fr-tbody tr:not(:last-child) td{border-bottom:1px solid #e9ecef}
  .fr-plan,.fr-rowhead{position:sticky;left:0;background:linear-gradient(90deg,#fff 0%,#fff 70%,#fff0 100%);z-index:1}
  
  /* Perfect alignment for plan columns */
  .fr-plan{min-width:150px;text-align:center}
  .fr-plan-content{display:flex;flex-direction:column; justify-content:space-between}
  .fr-product-image-section{min-height:150px;display:flex;align-items:center;justify-content:center;padding:4px 0 8px}
  .fr-product-image{display:block;width:100%;max-width:260px;height:140px;object-fit:contain}
  .fr-name-section{min-height:50px;display:flex;align-items:center;justify-content:center;padding:8px}
  .fr-badge-section{min-height:32px;display:flex;align-items:center;justify-content:center}
  .fr-price-section{min-height:75px;display:flex;align-items:center;justify-content:center;padding:8px}
  .fr-button-section{min-height:60px;display:flex;align-items:center;justify-content:center;padding:8px}
  
  .fr-planName{font-weight:700;line-height:1.2}
  .fr-badge{display:inline-block;font-size:.72rem;padding:.2rem .5rem;border:1px solid #e9ecef;border-radius:999px;color:#007bff;opacity:.85;background:#eaf4ff}
  .fr-badge.current{display:inline-block;border-color:#0056b3;background:#0056b3;color:#fff;font-weight:600}
  .fr-badge.pop{display:inline-block;border-color:var(--brand);box-shadow:0 0 0 3px var(--ring);background:#dfffe8;color:#00b894;font-weight:600}
  
  /* Current plan column styling */
  .fr-current-column{background:#2125290a !important}
  
  .fr-price{font-size:1.05rem;font-weight:600;color:#47A23A;line-height:1.4}
  .fr-sub{color:var(--muted);font-weight:500;margin-top:2px}
  .fr-center{text-align:center}

  .fr-hardware-row .fr-td{background:#f7f6ff;border-bottom:1px solid #dedafc !important}
  .fr-hardware-row .fr-rowhead{background:linear-gradient(90deg,#f7f6ff 0%,#f7f6ff 70%,#f7f6ff00 100%);color:#3525c7}

  .fr-sdi-cell{vertical-align:top;padding-top:14px;padding-bottom:14px}
  .fr-sdi-list{display:flex;flex-direction:column;align-items:stretch;gap:5px;min-width:145px}
  .fr-sdi-line{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;text-align:left;line-height:1.2}
  .fr-sdi-port{display:inline-flex;align-items:center;justify-content:center;min-width:43px;padding:3px 6px;border-radius:5px;background:#e9e7ff;color:#3525c7;font-size:.72rem;font-weight:700;white-space:nowrap}
  .fr-sdi-signal{font-size:.82rem;color:#333;white-space:nowrap}
  .fr-sdi-line-plain{display:block;text-align:center;color:#666}
  .fr-sdi-empty{color:#8a8f98}
  .fr-footnote-mark{margin-left:2px;color:#3525c7;font-size:.78em;font-weight:800}
  .fr-license-footnote{margin:16px 0 0;padding:11px 14px;border-left:3px solid #4331ed;border-radius:0 6px 6px 0;background:#f7f6ff;color:#4d4d57}

  /* Falcon Play: guided product selector */
  .fp-compare{margin-top:22px;background:#fff;border:1px solid #e7e8ec;border-radius:18px;overflow:hidden;box-shadow:0 12px 36px rgba(26,24,55,.09);color:#29292f}
  .fp-compare-intro{padding:34px 34px 22px;text-align:center;background:linear-gradient(180deg,#fff 0%,#fafaff 100%)}
  .fp-compare-intro h3,.fp-compare-step-heading h3,.fp-feature-heading h3{margin:5px 0 7px;font-size:1.55rem;font-weight:700;color:#24242a}
  .fp-compare-intro p,.fp-compare-step-heading p,.fp-feature-heading p{margin:0;color:#6b6b74;line-height:1.5}
  .fp-compare-kicker{display:inline-block;color:#4331ed;font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}

  .fp-system-switcher{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:14px;padding:0 34px 24px;background:linear-gradient(180deg,#fafaff 0%,#fff 100%)}
  .fp-system-button{z-index:auto;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:172px;padding:16px 18px;border:1px solid #dfe1e7;border-radius:13px;background:#fff;color:#303038;text-align:center;font:inherit;line-height:1.25;cursor:pointer;overflow:hidden;transition:border-color .18s,box-shadow .18s,background .18s,transform .18s}
  .fp-system-button:hover{border-color:#aaa3f8;filter:none!important;transform:translateY(-1px)}
  .fp-system-button:focus-visible{outline:3px solid rgba(67,49,237,.22);outline-offset:2px}
  .fp-system-button.is-active{border-color:#4331ed;background:#f3f1ff;box-shadow:0 0 0 2px rgba(67,49,237,.12),0 9px 22px rgba(33,28,80,.07)}
  .fp-system-button-image{display:flex;align-items:center;justify-content:center;width:100%;height:86px;margin-bottom:3px}
  .fp-system-button-image.is-empty{height:18px}
  .fp-system-button-image img{display:block;width:100%;height:82px;object-fit:contain}
  .fp-system-button-title{display:block;color:#26262d;font-size:1rem;font-weight:750;line-height:1.25}
  .fp-system-button-description{display:block;color:#70707a;font-size:.78rem;line-height:1.35}
  .fp-system-details{padding:0 34px 30px;background:#fff}
  .fp-system-details .fp-tech-details{margin:0}
  .fp-system-details .fp-hardware-requirements{margin:14px 0 0}

  .fp-license-step{padding:30px 34px 26px;border-top:1px solid #ececf2;background:#f7f8fa}
  .fp-license-step .fp-compare-step-heading{flex-direction:column;align-items:center;justify-content:center;gap:4px;margin-bottom:18px;text-align:center}
  .fp-license-step .fp-compare-step-heading .fp-compare-kicker{margin-top:0}
  .fp-license-step .fp-tier-switcher{width:min(760px,100%);padding:0}
  .fp-tier-switcher{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;justify-content:center;gap:12px;width:min(760px,calc(100% - 56px));margin:0 auto;padding:19px 0}
  .fp-tier-button{z-index:auto;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:100%;height:auto;min-height:94px;padding:14px 20px;border:1px solid #dfe1e7;border-radius:11px;background:#fff;color:#303038;text-align:center;font:inherit;line-height:1.25;cursor:pointer;overflow:hidden;transition:border-color .18s,box-shadow .18s,background .18s,transform .18s}
  .fp-tier-button:hover{border-color:#aaa3f8;filter:none!important;transform:translateY(-1px)}
  .fp-tier-button:focus-visible{outline:3px solid rgba(67,49,237,.22);outline-offset:2px}
  .fp-tier-button.is-active{border-color:#4331ed;background:#f3f1ff;box-shadow:0 0 0 2px rgba(67,49,237,.12)}
  .fp-tier-button-title{display:block;font-size:1.05rem;font-weight:750;line-height:1.2;color:#26262d}
  .fp-tier-button-description{display:block;font-size:.84rem;line-height:1.35;color:#70707a}
  .fp-tier-button-price{display:block;margin-top:5px;color:#47a23a;font-size:.78rem;font-weight:750;line-height:1.3}
  .fp-tier-button:disabled{cursor:not-allowed;opacity:.55;transform:none}

  .fp-tier-panel{padding:30px 34px 34px;border-top:1px solid #ececf2;background:#f7f8fa}
  .fp-tier-panel[hidden]{display:none!important}
  .fp-compare-step-heading{display:flex;align-items:flex-start;gap:14px;margin-bottom:22px}
  .fp-compare-step-heading .fp-compare-kicker{margin-top:7px;white-space:nowrap}
  .fp-compare-step-heading h3{font-size:1.35rem}

  .fp-compare-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
  .fp-compare-card{display:flex;flex-direction:column;min-width:0;padding:22px;border:1px solid #e0e2e8;border-radius:14px;background:#fff;box-shadow:0 4px 14px rgba(27,25,60,.05);cursor:pointer;transition:border-color .18s,box-shadow .18s,transform .18s}
  .fp-compare-card:hover{border-color:#b9b4ee;transform:translateY(-1px)}
  .fp-compare-card:focus-visible{outline:3px solid rgba(67,49,237,.22);outline-offset:3px}
  .fp-compare-card.is-selected{border-color:#4331ed;box-shadow:0 0 0 2px rgba(67,49,237,.12),0 9px 24px rgba(27,25,60,.1)}
  .fp-compare-image-wrap{display:flex;align-items:center;justify-content:center;height:125px;margin-bottom:12px}
  .fp-compare-image-wrap.is-empty{height:40px}
  .fp-compare-image{display:block;width:100%;height:120px;object-fit:contain}
  .fp-compare-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;min-height:27px;margin-bottom:12px}
  .fp-package-badge{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;font-size:.7rem;font-weight:750;line-height:1;white-space:nowrap}
  .fp-package-badge.is-hardware{background:#e5f8e9;color:#247332}
  .fp-package-badge.is-license{background:#edf0f5;color:#555b66}
  .fp-package-badge.is-io{background:#ebe9ff;color:#3b2dc4}
  .fp-compare-product-name{min-height:58px;margin:0;text-align:center;font-size:1rem;font-weight:750;line-height:1.3;color:#24242a}
  .fp-compare-price{margin-top:16px;text-align:center;font-size:1.7rem;font-weight:800;line-height:1.1;color:#47a23a}
  .fp-compare-vat{text-align:center;margin-top:4px;color:#777982;font-size:.78rem}
  .fp-compare-renewal{margin:13px 0 17px;padding:9px 10px;border-radius:7px;background:#f7f7f9;text-align:center;color:#44464f;font-size:.85rem;font-weight:600}
  .fp-compare-highlights{margin:auto 0 0;padding-top:4px;border-top:1px solid #eceef1}
  .fp-compare-highlights>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #eceef1;font-size:.82rem}
  .fp-compare-highlights>div:last-child{border-bottom:0}
  .fp-compare-highlights dt{color:#71737b}
  .fp-compare-highlights dd{max-width:60%;margin:0;text-align:right;font-weight:700;line-height:1.3;color:#303139}
  .fp-select-product{box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:100%;height:auto;min-height:42px;margin-top:16px;padding:9px 14px;border:1px solid #d7d8df;border-radius:8px;background:#fff;color:#4a4b53;text-align:center;font:inherit;font-size:.84rem;font-weight:700;line-height:1.25;cursor:pointer;filter:none!important}
  .fp-select-product:hover{border-color:#8e85f2;background:#f8f7ff;color:#4331ed;filter:none!important}
  .fp-compare-card.is-selected .fp-select-product{border-color:#4331ed;background:#4331ed;color:#fff}
  .fp-purchase-step{padding:30px 34px;border-top:1px solid #e5e6ea;background:#f7f8fa}
  .fp-selected-purchase{display:grid;grid-template-columns:108px minmax(0,1fr) auto auto;align-items:center;gap:24px;margin:0;padding:20px 22px;border:1px solid #dcd8ff;border-radius:12px;background:#f3f1ff}
  .fp-selected-media{display:flex;align-items:center;justify-content:center;width:108px;height:82px}
  .fp-selected-media.is-empty{display:none}
  .fp-selected-media img{display:block;width:100%;height:82px;object-fit:contain}
  .fp-selected-copy span,.fp-selected-copy strong,.fp-selected-total span,.fp-selected-total strong,.fp-selected-total small{display:block}
  .fp-selected-copy>span{margin-bottom:3px;color:#686a74;font-size:.72rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
  .fp-selected-copy strong{color:#292930;font-size:1rem;line-height:1.35}
  .fp-selected-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
  .fp-selected-badges .fp-package-badge{display:inline-flex}
  .fp-selected-renewal{display:block;margin-top:8px;color:#5e6069;font-size:.76rem;line-height:1.35}
  .fp-selected-renewal span{display:inline}
  .fp-selected-total{text-align:right}
  .fp-selected-total>span{margin-bottom:2px;color:#686a74;font-size:.72rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
  .fp-selected-total strong{color:#47a23a;font-size:1.35rem;line-height:1.15}
  .fp-selected-total small{margin-top:3px;color:#686a74;font-size:.72rem;line-height:1.35}
  .fp-buy-selected{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:auto;height:auto;min-height:48px;padding:12px 24px;border:0;border-radius:9px;background:#4331ed;color:#fff;text-align:center;font:inherit;font-weight:750;line-height:1.25;cursor:pointer;filter:none!important;box-shadow:0 7px 18px rgba(67,49,237,.2);transition:background .18s,transform .18s,box-shadow .18s}
  .fp-buy-selected:hover{background:#3525c7;transform:translateY(-1px);filter:none!important;box-shadow:0 9px 22px rgba(67,49,237,.25)}
  .fp-buy-selected:focus-visible{outline:3px solid rgba(67,49,237,.25);outline-offset:3px}

  .fp-tech-details{margin:0 0 22px;border:1px solid #dedfe5;border-radius:12px;background:#fff;overflow:hidden}
  .fp-tech-details summary{position:relative;display:flex;flex-direction:column;gap:2px;padding:17px 52px 17px 20px;cursor:pointer;list-style:none;font-weight:750;color:#303039}
  .fp-tech-details summary::-webkit-details-marker{display:none}
  .fp-tech-details summary small{color:#767780;font-size:.78rem;font-weight:400}
  .fp-tech-details summary:after{content:'+';position:absolute;right:20px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#eceaff;color:#4331ed;font-size:1.1rem;font-weight:700}
  .fp-tech-details[open] summary:after{content:'−'}
  .fp-tech-details[open] summary{border-bottom:1px solid #e7e8ed}
  .fp-tech-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
  .fp-tech-products.is-single{grid-template-columns:1fr}
  .fp-tech-products.is-single .fp-tech-product{border-right:0}
  .fp-tech-product{min-width:0;padding:20px;border-right:1px solid #e7e8ed}
  .fp-tech-product:last-child{border-right:0}
  .fp-tech-product h4{min-height:42px;margin:0 0 12px;font-size:.9rem;line-height:1.35;color:#303039}
  .fp-tech-product dl{margin:0 0 16px}
  .fp-tech-product dl>div{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid #eff0f3;font-size:.78rem}
  .fp-tech-product dt{color:#72747d}
  .fp-tech-product dd{margin:0;text-align:right;font-weight:700}
  .fp-tech-sdi>strong{display:block;margin-bottom:10px;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:#5f616a}
  .fp-tech-sdi .fr-sdi-list{min-width:0}
  .fp-tech-sdi p{margin:0;color:#71737c;font-size:.82rem;line-height:1.45}

  .fp-hardware-requirements{margin-top:22px;padding:20px;border:1px solid #dedfe5;border-radius:12px;background:#fff}
  .fp-hardware-requirements[hidden]{display:none!important}
  .fp-hardware-requirements-heading{margin-bottom:14px}
  .fp-hardware-requirements-heading h4{margin:4px 0 0;color:#292930;font-size:1rem}
  .fp-hardware-requirements ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}
  .fp-hardware-requirements li{min-width:0;padding:11px 12px;border:1px solid #ececf1;border-radius:8px;background:#fafbfc}
  .fp-hardware-requirements li strong,.fp-hardware-requirements li span{display:block}
  .fp-hardware-requirements li strong{margin-bottom:3px;color:#4c4e57;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}
  .fp-hardware-requirements li span{color:#303139;font-size:.8rem;line-height:1.35}

  .fp-feature-overview{padding:34px;border-top:1px solid #e8e9ee;background:#fff}
  .fp-feature-heading{max-width:680px;margin:0 auto 22px;text-align:center}
  .fp-feature-heading h3{font-size:1.35rem}
  .fp-feature-groups{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:18px}
  .fp-feature-group{padding:22px;border:1px solid #e2e3e8;border-radius:13px;background:#fafbfc;transition:border-color .2s,background .2s,box-shadow .2s,opacity .2s}
  .fp-feature-group.is-included{border-color:#8176ff;background:#f7f6ff;box-shadow:0 0 0 2px rgba(67,49,237,.1),0 8px 22px rgba(33,28,80,.07)}
  .fp-feature-group.is-excluded{border-color:#e2e3e8;background:#f4f5f7;box-shadow:none;opacity:.68}
  .fp-feature-group-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}
  .fp-feature-label{display:inline-block;color:#4331ed;font-size:.69rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
  .fp-feature-state{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:999px;background:#dff7e5;color:#247332;font-size:.65rem;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.035em}
  .fp-feature-group.is-excluded .fp-feature-label{color:#7c7e86}
  .fp-feature-group.is-excluded .fp-feature-state{background:#f5dfe1;color:#9b3d43}
  .fp-feature-group h4{margin:0 0 15px;font-size:1rem;color:#292930}
  .fp-feature-group ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 16px;margin:0;padding:0;list-style:none}
  .fp-feature-group.is-shared ul{grid-template-columns:1fr}
  .fp-feature-group li{position:relative;padding-left:22px;font-size:.84rem;line-height:1.35;color:#404149}
  .fp-feature-group li:before{content:'✓';position:absolute;left:0;top:-1px;display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:#76f193;color:#174c24;font-size:.65rem;font-weight:900}
  .fp-feature-group.is-excluded h4,.fp-feature-group.is-excluded li{color:#71737b}
  .fp-feature-group.is-excluded li:before{content:'×';background:#f3dadd;color:#9b3d43}
  .fp-feature-group p{margin:16px 0 0;padding-top:13px;border-top:1px solid #dfdcfa;color:#686a74;font-size:.78rem}
  .fp-feature-group.is-included .fp-feature-exclusion-note{display:none}

  .fp-compare-footer{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:24px 34px;border-top:1px solid #e5e6ea;background:#f7f8fa}
  .fp-compare-footer strong,.fp-compare-footer span{display:block}
  .fp-compare-footer strong{margin-bottom:4px;color:#2d2e35}
  .fp-compare-footer span{color:#6e7078;font-size:.82rem}
  .fp-demo-button{display:inline-flex;align-items:center;justify-content:center;min-width:150px;padding:11px 22px;border-radius:7px;background:#4331ed;color:#fff!important;font-weight:700;text-decoration:none!important;transition:background .18s,transform .18s}
  .fp-demo-button:hover{background:#3525c7;transform:translateY(-1px)}
  .fp-compare>.fr-license-footnote{margin:0;border-top:1px solid #e4e1ff;border-left:0;border-radius:0;padding:13px 34px;background:#f3f1ff;text-align:center;font-size:.8rem}

  @media (max-width: 980px) {
    .fp-compare-products,.fp-tech-products{grid-template-columns:1fr}
    .fp-compare-card{display:grid;grid-template-columns:150px minmax(0,1fr);column-gap:22px}
    .fp-compare-image-wrap{grid-row:1 / span 6;height:120px;margin:0}
    .fp-compare-badges,.fp-compare-product-name,.fp-compare-price,.fp-compare-vat,.fp-compare-renewal{grid-column:2;justify-content:flex-start;text-align:left;min-height:0}
    .fp-compare-highlights{grid-column:1 / -1;width:100%;margin-top:16px}
    .fp-tech-product{border-right:0;border-bottom:1px solid #e7e8ed}
    .fp-tech-product:last-child{border-bottom:0}
    .fp-hardware-requirements ul{grid-template-columns:repeat(2,minmax(0,1fr))}
    .fp-selected-purchase{grid-template-columns:90px minmax(0,1fr) auto}
    .fp-selected-media{width:90px}
    .fp-buy-selected{grid-column:1 / -1;width:100%}
  }

  @media (max-width: 640px) {
    .fp-compare-intro,.fp-tier-panel,.fp-feature-overview,.fp-license-step,.fp-purchase-step{padding:24px 18px}
    .fp-system-switcher{grid-template-columns:1fr;padding:0 18px 20px}
    .fp-system-button{min-height:145px;padding:14px 18px}
    .fp-system-button-image{height:70px}
    .fp-system-button-image img{height:68px}
    .fp-system-details{padding:0 18px 24px}
    .fp-tier-switcher{grid-template-columns:1fr;width:calc(100% - 36px);padding:16px 0}
    .fp-license-step .fp-tier-switcher{width:100%;padding:0}
    .fp-compare-step-heading{display:block}
    .fp-compare-step-heading .fp-compare-kicker{margin:0 0 3px}
    .fp-compare-products{gap:13px}
    .fp-compare-card{display:flex;padding:18px}
    .fp-compare-image-wrap{height:105px;margin-bottom:10px}
    .fp-compare-badges{justify-content:center}
    .fp-compare-product-name,.fp-compare-price,.fp-compare-vat,.fp-compare-renewal{text-align:center;min-height:0}
    .fp-hardware-requirements ul{grid-template-columns:1fr}
    .fp-selected-purchase{display:flex;align-items:stretch;flex-direction:column;text-align:center}
    .fp-selected-media{align-self:center;width:120px}
    .fp-selected-badges{justify-content:center}
    .fp-selected-total{text-align:center}
    .fp-buy-selected{width:100%}
    .fp-feature-groups,.fp-feature-group ul{grid-template-columns:1fr}
    .fp-compare-footer{align-items:stretch;flex-direction:column;padding:22px 18px;text-align:center}
    .fp-demo-button{width:100%}
    .fp-compare>.fr-license-footnote{padding:13px 18px}
  }

  .fr-icon{width:22px;height:22px;flex:0 0 22px;display:inline-block;vertical-align:-4px;border-radius:50%;padding:3px}
  .fr-yes{padding-top: 4.5px; color:black;background-color:#76f193;} 
  .fr-no{padding-left: 4.5px; color:#842029;background-color:#f8d7da;}
  .fr-no path{stroke-width:0.5;stroke:currentColor}
  .flexhead{display:flex;gap:10px;justify-content:space-between}

  .fr-btnWrap {width:100% }
  .fr-btn{ width: 100%; height: 40px;}
  
  /* Enterprise Modal Styles */
  .enterprise-modal {
    display: none;
    position: fixed;
    z-index: 10000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
    animation: fadeIn 0.3s ease;
  }
  .enterprise-modal.show {
    display: block;
  }
  .enterprise-modal-content {
    background-color: #fff;
    margin: 2% auto;
    padding: 0;
    border-radius: 16px;
    width: 90%;
    max-width: 600px;
    max-height: 95vh;
    overflow-y: auto;
    box-shadow: 0 8px 32px rgba(0,0,0,0.2);
    animation: slideIn 0.3s ease;
  }
  .enterprise-modal-header {
    background: linear-gradient(135deg, #A63C06, #d4541e);
    color: white;
    padding: 2rem;
    border-radius: 16px 16px 0 0;
    text-align: center;
  }
  .enterprise-modal-body {
    padding: 2rem;
  }
  .enterprise-feature-list {
    background: #f8f9fa;
    padding: 1rem;
    border-radius: 10px;
    margin: 1rem 0;
  }
  .enterprise-feature-list h4 {
    color: #A63C06;
    margin-bottom: 1rem;
  }
  .enterprise-feature-list ul {
    margin: 0;
    padding-left: 1.2rem;
  }
  .enterprise-feature-list li {
    margin-bottom: 0.5rem;
    color: #333;
  }
  .enterprise-form-group {
    margin-bottom: 1.5rem;
  }
  .enterprise-form-group label {
    display: block;
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: #333;
  }
  .enterprise-form-group input,
  .enterprise-form-group textarea {
    width: 100%;
    padding: 0.75rem;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-size: 1rem;
    font-family: inherit;
  }
  .enterprise-form-group textarea {
    min-height: 120px;
    resize: vertical;
  }
  .enterprise-close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
    position: absolute;
    right: 1rem;
    top: 1rem;
  }
  .enterprise-close:hover {
    color: white;
  }
  .enterprise-btn {
    background: #A63C06;
    color: white;
    padding: 1rem 2rem;
    border: none;
    border-radius: 10px;
    font-size: 1.1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    width: 100%;
  }
  .enterprise-btn:hover {
    background: #8a3305;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(166, 60, 6, 0.3);
  }
  .enterprise-btn:disabled {
    background: #6c757d;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
  }
  @keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
  }
  @keyframes slideIn {
    from { transform: translateY(-50px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
  }
  @media (max-width:860px){.fr-table{min-width:720px}}




  /* User information */

.info-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 0;
    border-bottom: 1px solid rgba(166, 60, 6, 0.1);
}
.info-item:last-child {
    border-bottom: none;
}
.info-label {
    font-weight: 600;
    color: #495057;
    font-size: 0.95rem;
}
.info-value {
    color: #2c3e50;
    font-weight: 500;
}

.edit-form-container {
    background: white;
    border-radius: 16px;
    padding: 2rem;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    border: 1px solid rgba(166, 60, 6, 0.1);
}
.form-group-modern {
    margin-bottom: 1.5rem;
}
.form-group-modern label {
    font-weight: 600;
    color: #495057;
    margin-bottom: 0.5rem;
    display: block;
    font-size: 0.95rem;
}
.form-group-modern input {
    border: 2px solid #e9ecef;
    border-radius: 12px;
    padding: 0.875rem 1rem;
    font-size: 1rem;
    transition: all 0.3s ease;
    background: #fff;
    width: 100%;
}
.form-group-modern input:focus,
.form-group-modern select:focus {
    border-color: #A63C06;
    box-shadow: 0 0 0 3px rgba(166, 60, 6, 0.1);
    background: #fff;
    outline: none;
}
.form-group-modern select {
    border: 2px solid #e9ecef;
    border-radius: 12px;
    padding: 0.875rem 1rem;
    font-size: 1rem;
    transition: all 0.3s ease;
    background: #fff;
    width: 100%;
}


.terms-section {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-radius: 15px;
    padding: 2rem;
    margin: 2rem 0;
    border: 1px solid rgba(166, 60, 6, 0.1);
}
.radio-group {
    display: flex;
    gap: 1rem;
    justify-content: center;
    align-items: center;
    margin: 1rem 0;
}
.radio-group label {
    margin-right: 0.25rem;
    margin-bottom: 0;
    font-weight: 500;
}
.radio-group input[type="radio"] {
    margin-right: 0.5rem;
    width: auto;
}
.password-toggle-container {
    position: relative;
}
.password-toggle-icon {
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    width: 20px;
    height: 20px;
    fill: #6c757d;
    transition: fill 0.2s ease;
}
.password-toggle-icon:hover {
    fill: #A63C06;
}
.icon-eyeslash {
    display: none;
}
.createuser_error {
    color: #dc3545;
    font-weight: 600;
    font-size: 0.875rem;
    margin-top: 0.5rem;
    padding: 0.75rem;
    background: #fff5f5;
    border-radius: 4px;
    display: none;
    animation: slideDown 0.3s ease-out;
}

.createuser_error a {
    color: #A63C06;
    text-decoration: underline;
    font-weight: 700;
}

.createuser_error a:hover {
    color: #8a3205;
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.createuser-form-group {
    margin-bottom: 1.5rem;
}

.createuser-form-group label {
    padding-bottom: 0.5rem;
}

.createuser-form-group .form-control {
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.createuser-form-group .form-control:focus {
    border-color: #A63C06;
    box-shadow: 0 0 0 0.2rem rgba(166, 60, 6, 0.15);
}

/* Success state for valid fields */
.createuser-form-group .form-control[style*="border-color: rgb(40, 167, 69)"] {
    border-color: #28a745 !important;
    box-shadow: 0 0 0 0.1rem rgba(40, 167, 69, 0.1);
}

/* Error state for invalid fields */
.createuser-form-group .form-control[style*="border-color: rgb(222, 47, 81)"] {
    border-color: #DE2F51 !important;
    box-shadow: 0 0 0 0.1rem rgba(222, 47, 81, 0.1);
    animation: shake 0.3s ease-in-out;
}

@keyframes shake {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-5px); }
    75% { transform: translateX(5px); }
}
