/* Auto-generated classes for migrated inline styles. Do not hand-edit individual mappings unless removing the matching markup. */

.csp-s-022466bb8e {
    position: absolute;
    right: 16px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-right: 2px solid #cbd5e1;
    border-bottom: 2px solid #cbd5e1;
    transform: translateY(-65%) rotate(45deg);
    transition: transform 0.18s ease;
    pointer-events: none;
}

.csp-s-026f6a8526 {
    display: flex;
    align-items: center;
    color: #475569;
    font-size: 13px;
    white-space: nowrap;
}

.csp-s-02767cd42b {
    font-size: 14px;
    opacity: 0.9;
    margin: 0 0 16px 0;
}

.csp-s-0371c4d9a8 {
    padding: 8px 20px;
    white-space: nowrap;
    font-size: 13px;
    min-width: 96px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.csp-s-045aac899d {
    margin-bottom: 16px;
}

.csp-s-0565ce0d5d {
    max-width: 520px;
    text-align:center;
}

.csp-s-085c9983bc {
    background: #fff;
    padding: 25px;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.csp-s-09c64922d9 {
    margin:0 0 10px;
    color:#1a202c;
    font-size:18px;
    font-weight:600;
}

.csp-s-09ea9eaa97 {
    display: block;
    margin: 20px auto 0;
    text-align: center;
    padding: 10px 30px;
    font-size: 14px;
}

.csp-s-0a2b884f70 {
    display:flex;
    justify-content:center;
    margin-bottom:16px;
}

.csp-s-0af1bd8cef {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
}

.csp-s-0b09c480c2 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
    margin-bottom: 24px;
}

.csp-s-0b4d91db7b {
    font-size:40px;
    margin-bottom:14px;
}

.csp-s-0bbcb6337b {
    background: rgba(255,255,255,0.2);
    border: none;
    color: white;
    width: 28px;
    height: 28px;
    border-radius: 6px;
    font-size: 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s;
}

.csp-s-0ca7a6873a {
    color: #2d3748;
    margin: 0;
}

.csp-s-0d6d38d3e8 {
    color: #718096;
    margin-left: 12px;
}

.csp-s-0d7010b773 {
    color:red;
}

.csp-s-0e13a29e89 {
    color: #718096;
    text-align: center;
    padding: 40px;
}

.csp-s-0e8d00b700 {
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255,255,255,0.45);
    border-top-color: #fff;
    border-radius: 50%;
    display: inline-block;
    animation: declarationQuerySpin .8s linear infinite;
}

.csp-s-0ed0ac4eca {
    color: #2d3748;
    margin: 0 0 10px 0;
    font-size: 18px;
}

.csp-s-1039c64d61 {
    margin-bottom: 40px;
    color: #333;
    font-size: 20px;
    font-weight: 600;
    text-align: left;
}

.csp-s-117e16d2c3 {
    padding: 10px 30px;
    font-size: 14px;
}

.csp-s-11954b4d06 {
    color: #22543d;
    margin-bottom: 15px;
}

.csp-s-12c0c0fe73 {
    color: #742a2a;
    font-size: 13px;
}

.csp-s-12c7a59743 {
    font-size: 48px;
    margin-bottom: 15px;
}

.csp-s-146ef40009 {
    margin-top: 4px;
    font-size: 13px;
    min-height: 10px;
    width: 78%;
}

.csp-s-14818c428a {
    margin-top: 6px;
    min-height: 18px;
}

.csp-s-148ea2aa49 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 15px;
}

.csp-s-14c0e62db6 {
    text-align: center;
    padding: 15px;
    background: #f7fafc;
    border-radius: 8px;
    color: #4a5568;
    font-size: 14px;
    margin-top: 20px;
}

.csp-s-1562c3ed9c {
    display: flex;
    gap: 12px;
    justify-content: center;
}

.csp-s-15fa32aebf {
    flex: 1;
    min-width: 0;
}

.csp-s-16fcb84918 {
    color: #9f580a;
}

.csp-s-1821c513d7 {
    position: relative;
    width: 50%;
}

.csp-s-1944953ce0 {
    padding: 10px 30px;
    font-size: 14px;
    background-color: #e53e3e;
}

.csp-s-1b1483e1cd {
    display: none;
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    background: white;
    border: 2px solid #e2e8f0;
    border-radius: 8px;
    z-index: 100;
    max-height: 220px;
    overflow-y: auto;
    box-shadow: 0 4px 12px rgba(0,0,0,0.12);
}

.csp-s-1b9af4d320 {
    display:flex;
    align-items:center;
    gap:22px;
    color:#1f2937;
    font-size:13px;
    font-weight:600;
    line-height:1.9;
    white-space:nowrap;
}

.csp-s-1bd4bf1b72 {
    color: #4a5568;
    text-align: center;
    margin-bottom: 30px;
    line-height: 1.6;
}

.csp-s-1ca7aab21c {
    background: #fffbeb;
    border-left: 4px solid #f59e0b;
    padding: 15px;
    margin-bottom: 20px;
    border-radius: 8px;
}

.csp-s-1dc137eebc {
    display: block;
    margin-bottom: 8px;
    color: #2d3748;
    font-weight: 600;
    font-size: 14px;
}

.csp-s-1e7249abce {
    color:#2d3748;
    font-size:16px;
    font-weight:600;
    margin-bottom:16px;
}

.csp-s-1fe350a4dd {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 10px;
    background: #fff5f5;
    border-radius: 6px;
}

.csp-s-2064a63df5 {
    background:#c6f6d5;
    color:#22543d;
    padding:2px 8px;
    border-radius:999px;
    font-size:12px;
    font-weight:600;
}

.csp-s-2246f02031 {
    display: flex;
    gap: 15px;
    justify-content: center;
    margin: 30px 0;
}

.csp-s-2296ca8407 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 10px;
    background: white;
    border-radius: 6px;
}

.csp-s-22a768de34 {
    color: #742a2a;
}

.csp-s-22aed85eb4 {
    width: 100%;
    height: 42px;
    padding: 0 34px 0 18px;
    border: 1px solid #22c55e;
    border-radius: 4px;
    font-size: 15px;
    color: #4a5568;
    background: white;
    cursor: pointer;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    position: relative;
}

.csp-s-234fb55d73 {
    width:100%;
    padding:10px 12px;
    border:2px solid #e2e8f0;
    border-radius:6px;
    font-size:14px;
    box-sizing:border-box;
    background:#f7fafc;
    color:#4a5568;
}

.csp-s-23b34f3d0f {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.csp-s-25c47d8da4 {
    display: flex;
    gap: 8px;
    align-items: stretch;
    flex: 1;
    min-width: 0;
}

.csp-s-264028a917 {
    font-size: 28px;
}

.csp-s-2725c3bdc6 {
    padding: 12px;
    color: #2d3748;
    font-size: 14px;
}

.csp-s-2833f28b29 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
}

.csp-s-291526239d {
    color: #667eea;
    margin: 0;
}

.csp-s-293634f670 {
    display: block;
    color: #2d3748;
    font-weight: 600;
    font-size: 14px;
    white-space: nowrap;
}

.csp-s-29bf123078 {
    color:#dd6b20;
    font-size:14px;
    margin-bottom:24px;
}

.csp-s-2b3129f441 {
    color: #2d3748;
    margin-bottom: 15px;
}

.csp-s-2b49ba8351 {
    flex: 1;
    padding: 12px 24px;
    background: #f7fafc;
    color: #4a5568;
    border: 2px solid #e2e8f0;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

.csp-s-2bcca8a440 {
    padding: 15px 0;
    border-bottom: 1px solid #e2e8f0;
    align-items: flex-start;
}

.csp-s-2c8110d4ee {
    max-width: 400px;
}

.csp-s-2c945307e5 {
    padding: 6px 0;
    font-size: 14px;
}

.csp-s-2db8309064 {
    font-size: 36px;
}

.csp-s-2e15c27064 {
    color: #92400e;
    margin: 0;
    font-size: 14px;
}

.csp-s-2e945d4b10 {
    display: flex;
    gap: 12px;
    align-items: stretch;
    width: 78%;
}

.csp-s-2f589feba8 {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 4px 0 18px;
    color: #4a5568;
    font-size: 14px;
    line-height: 1.6;
}

.csp-s-304f66d7c8 {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.csp-s-31948659bb {
    color:#2d3748;
    font-size:15px;
    font-weight:600;
    margin-bottom:6px;
}

.csp-s-31981a7d51 {
    color: red;
}

.csp-s-326442d117 {
    color: #2d3748;
    font-size: 14px;
    font-weight: 600;
}

.csp-s-33c7f767eb {
    display: none;
    margin: 0 0 20px;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
}

.csp-s-34302309ca {
    margin-top: 6px;
    font-size: 12px;
    color: #718096;
    text-align: center;
    min-height: 18px;
}

.csp-s-3438e292ac {
    display: flex;
    justify-content: center;
    margin-top: 28px;
}

.csp-s-3462fcf4f6 {
    color: #c53030;
}

.csp-s-34b45e679b {
    position: relative;
    padding: 7px 16px;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    border: none;
    border-radius: 7px;
    color: white;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    box-shadow: 0 3px 10px rgba(245, 158, 11, 0.24);
    transition: all 0.3s ease;
    line-height: 1.1;
}

.csp-s-350c2c5625 {
    padding: 6px 15px;
    font-size: 13px;
    background: #ebf8ff;
    color: #2b6cb0;
    border: 1px solid #bee3f8;
    border-radius: 6px;
    cursor: pointer;
}

.csp-s-35baa09f7c {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 30px;
}

.csp-s-3649011d78 {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.csp-s-36c46a8d33 {
    display: none;
    position: absolute;
    top: 50px;
    left: 0;
    right: 0;
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    z-index: 120;
    overflow: hidden;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.14);
}

.csp-s-373fa800de {
    width: 16px;
    height: 16px;
    margin-top: 3px;
    flex: 0 0 16px;
    cursor: pointer;
    accent-color: #ff6b35;
}

.csp-s-37b7f9931a {
    padding: 4px 10px;
    font-size: 12px;
    background: #edf2f7;
    color: #4a5568;
    border: 1px solid #cbd5e0;
    border-radius: 999px;
    cursor: pointer;
}

.csp-s-396c428f8d {
    color: #e53e3e;
    font-size: 16px;
    margin-bottom: 12px;
}

.csp-s-3976d728dc {
    text-align: center;
    margin-bottom: 24px;
}

.csp-s-398bc35703 {
    padding: 8px 16px;
}

.csp-s-39d670bc74 {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 12px;
    padding: 24px;
    color: white;
    box-shadow: 0 4px 12px rgba(102,126,234,0.3);
}

.csp-s-3aa6e3d218 {
    margin-bottom: 28px;
    padding: 12px 14px;
    background:#f7fafc;
    border-radius:8px;
    color:#4a5568;
    font-size:13px;
    line-height:1.7;
}

.csp-s-3abd04fcfc {
    margin-bottom: 20px;
    color: #333;
    font-size: 18px;
    font-weight: 600;
    text-align: center;
}

.csp-s-3c81afc98c {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: nowrap;
    min-width: 0;
}

.csp-s-3cda8ee9ef {
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 12px;
    background: #f7fafc;
    border-radius: 8px;
}

.csp-s-3d473903de {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
}

.csp-s-3e2c17affd {
    display: inline-block;
    width: 10px;
    height: 10px;
    background: #fff;
    border-radius: 50%;
    margin-right: 8px;
}

.csp-s-3eb928352f {
    color: #718096;
    font-size: 13px;
}

.csp-s-3ece73e832 {
    color: #2d3748;
    font-size: 13px;
    font-weight: 600;
}

.csp-s-40adbf5e64 {
    color: #666;
    margin-bottom: 50px;
    font-size: 16px;
    text-align: center;
}

.csp-s-4235142e93 {
    font-size: 28px;
    font-weight: bold;
    margin: 16px 0;
}

.csp-s-42651b62b6 {
    color: #e53e3e;
    font-size: 14px;
    margin-top: 8px;
    display: block;
}

.csp-s-4386f56e5c {
    color: #2d3748;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
}

.csp-s-43a4ecf838 {
    flex: 0 0 120px;
    background: #e53e3e;
}

.csp-s-43fafcafc0 {
    grid-column: 1 / -1;
    padding: 18px 20px;
    background: #f0fff4;
    border: 1px solid #9ae6b4;
    border-radius: 12px;
    color: #22543d;
    font-size: 15px;
    font-weight: 600;
    text-align: center;
}

.csp-s-44a09914fb {
    color:#2d3748;
    font-size:13px;
    font-weight:600;
    margin-bottom:4px;
}

.csp-s-47840c7d57 {
    padding: 8px 20px;
    font-size: 14px;
    background: #48bb78;
    display: none;
}

.csp-s-49664f3dc8 {
    margin-bottom: 18px;
    color:#4a5568;
    line-height:1.8;
    font-size:14px;
    text-align:center;
}

.csp-s-4b85de036d {
    display: none;
    padding: 12px 15px;
    background: #f7fafc;
    border-radius: 8px;
    margin-top: 8px;
    border-left: 4px solid #48bb78;
}

.csp-s-4bfa2eb34f {
    width: 100%;
    padding: 12px;
    background: white;
    color: #667eea;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
}

.csp-s-4d379f749a {
    list-style: none;
    padding: 0;
    margin: 0 0 20px 0;
}

.csp-s-4f01752563 {
    color: #744210;
    font-size: 13px;
}

.csp-s-4f8f9f2dc4 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 10px;
    background: #fffaf0;
    border-radius: 6px;
}

.csp-s-4fdc48e8ea {
    font-size: 18px;
    color: white;
}

.csp-s-4fe4c8b985 {
    display: none;
    margin-top: 20px;
    background: #f0fff4;
    padding: 20px;
    border-radius: 8px;
    border-left: 4px solid #48bb78;
}

.csp-s-5003f854f5 {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

.csp-s-511979e5b0 {
    background: white;
    padding: 15px;
    border-radius: 8px;
    border: 1px solid #48bb78;
}

.csp-s-51211c442c {
    color:#718096;
    font-size:14px;
    margin-bottom:18px;
}

.csp-s-513c06b252 {
    color:#4a5568;
    font-size:14px;
    font-weight:600;
}

.csp-s-539bae07d8 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}

.csp-s-54d32d80db {
    margin-top: 10px;
}

.csp-s-55a5d26c3c {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 2px solid #e2e8f0;
    border-top: none;
    border-radius: 0 0 8px 8px;
    z-index: 100;
    max-height: 200px;
    overflow-y: auto;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}

.csp-s-5a8a9178aa {
    color: #a0aec0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.csp-s-5bcf6a95cb {
    margin-bottom: 22px;
}

.csp-s-5bee1286d9 {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 10px 12px;
    background: #f7fafc;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
    text-align: left;
}

.csp-s-5c05f4afaf {
    font-weight: 600;
}

.csp-s-5c61b30944 {
    color: #48bb78;
}

.csp-s-5cd67182e5 {
    color: #667eea;
    margin: 0 2px;
}

.csp-s-5dc2db64ba {
    text-align: center;
    margin-top: 20px;
}

.csp-s-5e0e4a8580 {
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
    align-items: stretch;
}

.csp-s-5ec84e073e {
    position: absolute;
    top: 20px;
    right: 20px;
    background: none;
    border: none;
    font-size: 32px;
    color: #999;
    cursor: pointer;
}

.csp-s-5efb2661e2 {
    text-align: center;
    margin-bottom: 20px;
}

.csp-s-5f9c4189bf {
    margin-bottom: 16px;
    color: #333;
    font-size: 20px;
    font-weight: 600;
}

.csp-s-5fa693f3d4 {
    margin-top: 20px;
}

.csp-s-5fc6da4e1e {
    flex: 0 0 140px;
}

.csp-s-6027b3bc2f {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 32px;
    height: 32px;
    background: none;
    border: none;
    font-size: 24px;
    cursor: pointer;
    color: #a0aec0;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    padding: 0;
}

.csp-s-6056cb2c4c {
    max-height: 55vh;
    overflow-y: auto;
    color: #4a5568;
    font-size: 14px;
    line-height: 1.9;
    white-space: pre-wrap;
    padding: 4px 2px 0;
}

.csp-s-62669b7317 {
    color: #975a16;
    font-size: 13px;
}

.csp-s-680eb61789 {
    flex: 1;
    min-width: 0;
    padding: 10px 15px;
    border: 2px solid #e2e8f0;
    border-radius: 8px;
    font-size: 14px;
    color: #2d3748;
    background: white;
    cursor: pointer;
    box-sizing: border-box;
}

.csp-s-69d66e5b2e {
    width: 100%;
}

.csp-s-6b250b24a9 {
    margin-bottom: 20px;
    padding: 10px 16px;
    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.csp-s-6b881e6b6c {
    padding: 30px;
}

.csp-s-6c0ccc3300 {
    color: #975a16;
    margin-bottom: 15px;
}

.csp-s-6c52ce459c {
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 12px;
    background: #fffaf0;
    border-radius: 8px;
}

.csp-s-6c52fb5bb0 {
    display: flex;
    align-items: center;
    color: #475569;
    font-size: 13px;
    white-space: nowrap;
    padding-left: 10px;
    border-left: 1px solid #cbd5e1;
}

.csp-s-6e7bb7a940 {
    color: #718096;
    font-size: 12px;
    text-align: center;
    margin-bottom: 14px;
}

.csp-s-6f9bb5383a {
    text-align: center;
    padding: 60px 20px;
}

.csp-s-6ff450b43b {
    width:100%;
    padding:10px 12px;
    border:2px solid #e2e8f0;
    border-radius:6px;
    font-size:14px;
    box-sizing:border-box;
    background:#fff;
    color:#2d3748;
}

.csp-s-7023e38b21 {
    color: #718096;
    font-size: 14px;
}

.csp-s-712f1fdb5a {
    display: none;
    margin-top: 20px;
}

.csp-s-7270633ac4 {
    list-style: none;
    padding: 0;
    margin: 0 0 20px 0;
    text-align: left;
}

.csp-s-72a68ac344 {
    text-align: center;
}

.csp-s-72d6c38e5f {
    margin-bottom: 12px;
}

.csp-s-72fca94264 {
    max-width: 500px;
}

.csp-s-7320105dbf {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    min-width: 0;
}

.csp-s-733af0fc61 {
    color: #4a5568;
    font-size: 12px;
    margin: 0;
}

.csp-s-743f25254f {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
}

.csp-s-74cb35989a {
    background: white;
    padding: 15px;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
}

.csp-s-752ad9a52b {
    margin: 0;
    color: #4a5568;
    font-size: 12px;
}

.csp-s-755b4509af {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #e2e8f0;
    gap: 12px;
    flex-wrap: wrap;
}

.csp-s-76120584bd {
    height: 32px;
    padding: 0 10px;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    background: #fff;
    color: #4a5568;
    font-size: 13px;
    cursor: pointer;
}

.csp-s-76ef5af46a {
    color: #94a3b8;
    font-size: 12px;
}

.csp-s-77a349122b {
    display:block;
    margin-bottom:8px;
    color:#2d3748;
    font-weight:600;
}

.csp-s-791e5c1d1a {
    color: #4a5568;
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
}

.csp-s-79a1c5a5db {
    margin-bottom:16px;
}

.csp-s-7a6ee40bf2 {
    display: flex;
    gap: 15px;
    justify-content: center;
    align-items: center;
    margin: 20px 0 34px;
    flex-wrap: wrap;
}

.csp-s-7ad097778d {
    margin: 0;
    font-weight: 400;
    cursor: pointer;
}

.csp-s-7ca4e6d2a8 {
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    margin-bottom:8px;
}

.csp-s-7cd7e01e2a {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px;
}

.csp-s-7d31247c3b {
    color: #2d3748;
    font-size: 15px;
}

.csp-s-7df1269016 {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}

.csp-s-7f09016ce8 {
    font-size: 24px;
}

.csp-s-7f6b437f29 {
    text-align: center;
    color: #1f5fbf;
    margin-bottom: 30px;
}

.csp-s-7f93b287e1 {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.csp-s-804f67ed75 {
    min-width: 160px;
}

.csp-s-805b38cb51 {
    margin-top:6px;
    color:#718096;
    font-size:12px;
}

.csp-s-80aa58a4f6 {
    display: flex;
    gap: 15px;
    justify-content: center;
}

.csp-s-815133aa88 {
    font-size: 48px;
    margin-bottom: 16px;
}

.csp-s-830fcd4cec {
    padding: 18px 0;
    border-bottom: 1px solid #e2e8f0;
    align-items: flex-start;
    gap: 12px;
}

.csp-s-832c66883a {
    width: 100%;
    padding: 12px 15px;
    border: 2px solid #e2e8f0;
    border-radius: 8px;
    font-size: 14px;
}

.csp-s-838fa21526 {
    background: #f7fafc;
}

.csp-s-8410c989c9 {
    cursor: pointer;
}

.csp-s-84edf7c1c3 {
    color:#718096;
    font-size:14px;
    line-height:1.8;
}

.csp-s-851bb6213e {
    width: 100%;
    padding: 12px;
    margin-bottom: 30px;
    background: #f7fafc;
    border: 2px dashed #cbd5e0;
    border-radius: 8px;
    color: #4a5568;
    cursor: pointer;
    font-size: 14px;
    display: none;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.csp-s-859fdcf549 {
    color: #2d3748;
    margin-bottom: 20px;
}

.csp-s-85c23e4cde {
    flex: 0 0 100px;
    padding: 8px 16px;
    font-size: 14px;
    border-radius: 6px;
}

.csp-s-86d76d3f5f {
    flex: 0 0 120px;
}

.csp-s-8800be98b0 {
    flex: 0 0 160px;
    background: #48bb78;
}

.csp-s-898188ff75 {
    margin-top:8px;
    display:flex;
    flex-direction:column;
    gap:2px;
    overflow-x:auto;
}

.csp-s-89c87e0276 {
    width: 230px;
    flex-shrink: 0;
}

.csp-s-8a9586fc61 {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.csp-s-8adf814d48 {
    color: #9b2c2c;
}

.csp-s-8af19accfd {
    padding: 12px 40px;
    font-size: 16px;
    background: #4299e1;
}

.csp-s-8c23f5aa89 {
    max-width: 720px;
}

.csp-s-8eb7f71d57 {
    color: #e2e8f0;
}

.csp-s-8fe0338995 {
    padding: 7px 18px;
    font-size: 15px;
    color: #4a5568;
    background: white;
    cursor: pointer;
    transition: background 0.2s ease, color 0.2s ease;
}

.csp-s-9048579252 {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 22px;
    min-width: 0;
    flex: 1;
}

.csp-s-90f1221bcd {
    border-bottom: 1px solid #e2e8f0;
}

.csp-s-914255fa4f {
    display: none;
    margin: 6px 0 0;
    color: #e53e3e;
    font-size: 13px;
    line-height: 1.4;
}

.csp-s-93c6a8ff07 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

.csp-s-94c5dc442c {
    color: #2d3748;
    font-weight: 600;
    margin-bottom: 4px;
}

.csp-s-964fd164a5 {
    font-size: 24px;
    line-height: 1;
}

.csp-s-9688e61b85 {
    width: 100%;
    background: #e2e8f0;
    color: #a0aec0;
    cursor: not-allowed;
}

.csp-s-99afa9bc7b {
    color: #f56565;
    text-align: center;
}

.csp-s-9ac90f49bb {
    padding: 12px;
    text-align: left;
    border-bottom: 2px solid #e2e8f0;
    color: #4a5568;
    font-size: 14px;
    font-weight: 600;
}

.csp-s-9ae1ccc2d6 {
    font-size: 14px;
    opacity: 0.9;
    margin-bottom: 16px;
}

.csp-s-9b090999a7 {
    margin-bottom: 16px;
    color: #1a1a1a;
    font-size: 20px;
    font-weight: 600;
    text-align: center;
}

.csp-s-9bd896f184 {
    padding: 10px 20px;
    white-space: nowrap;
    font-size: 14px;
}

.csp-s-9d49a2b4e2 {
    color:#dd6b20;
}

.csp-s-9db9636f79 {
    color: #2d3748;
    font-weight: 600;
    font-size: 13px;
    margin-bottom: 4px;
}

.csp-s-9e46a2ac60 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-bottom: 12px;
}

.csp-s-9ef4acaaf8 {
    color: #9b2c2c;
    margin-bottom: 10px;
}

.csp-s-9f5b4829ea {
    padding: 20px;
    overflow: hidden;
}

.csp-s-a0198da9aa {
    color: #e53e3e;
    margin: 0 2px;
}

.csp-s-a04d001bb9 {
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 12px;
    background: #fff5f5;
    border-radius: 8px;
}

.csp-s-a080f7b345 {
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255,255,255,0.45);
    border-top-color: #fff;
    border-radius: 50%;
    display: inline-block;
    animation: templateQuerySpin .8s linear infinite;
}

.csp-s-a1074756e0 {
    color: #9f580a;
    margin-bottom: 15px;
}

.csp-s-a1bbd303d3 {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1;
    min-width: 0;
}

.csp-s-a1ecf408c6 {
    width: 100%;
    padding: 10px 15px;
    border: 2px solid #e2e8f0;
    border-radius: 8px;
    font-size: 14px;
    color: #2d3748;
    background: white;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.csp-s-a25c4e6d72 {
    padding: 12px 40px;
    font-size: 16px;
    background-color: #e53e3e;
}

.csp-s-a2d6da4a9d {
    position: relative;
    padding: 7px 18px;
    font-size: 15px;
    color: #4a5568;
    background: white;
    cursor: pointer;
    transition: background 0.2s ease, color 0.2s ease;
}

.csp-s-a4902724ed {
    display: flex;
    align-items: center;
    gap: 24px;
    width: 100%;
}

.csp-s-a602572713 {
    display: flex;
    gap: 6px;
}

.csp-s-a6b22e56c7 {
    display: block;
    margin: 20px auto 0;
}

.csp-s-a6e1dc33de {
    font-size: 14px;
    opacity: 0.9;
    margin-bottom: 8px;
}

.csp-s-a87209bff0 {
    flex: 0 0 160px;
    background: #ff6b35;
}

.csp-s-a8cfbd1ab4 {
    margin-bottom: 18px;
    display:none;
}

.csp-s-a9a35d2607 {
    max-width: 420px;
    padding: 32px;
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.12);
}

.csp-s-a9bf3ba9dd {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
    margin-top: 20px;
    color: #718096;
    font-size: 14px;
}

.csp-s-aa95233b4d {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

.csp-s-ab1edf5cc3 {
    margin-top:8px;
    padding:8px 10px;
    background:#f7fafc;
    border-radius:8px;
    border:1px solid #edf2f7;
}

.csp-s-ac6021677d {
    flex: 0 0 100px;
    padding: 8px 16px;
    font-size: 14px;
    background: #10b981;
    border-color: #10b981;
    border-radius: 6px;
}

.csp-s-ae8929e840 {
    padding: 12px 40px;
    font-size: 16px;
}

.csp-s-af930cc434 {
    font-size: 24px;
    font-weight: 600;
}

.csp-s-b003a5a492 {
    width:100%;
    padding:12px 14px;
    border:2px solid #e2e8f0;
    border-radius:8px;
    font-size:14px;
    background:#fff;
    color:#2d3748;
    box-sizing:border-box;
}

.csp-s-b07b991365 {
    flex: 1;
    padding: 12px 24px;
    background: #fee2e2;
    color: #c53030;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

.csp-s-b08b5c9498 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.csp-s-b11f0707b0 {
    background: linear-gradient(135deg, #4299e1 0%, #3182ce 100%);
    padding: 25px;
    border-radius: 12px;
    color: white;
}

.csp-s-b35b0b5841 {
    font-weight: 600;
    color: #2d3748;
    font-size: 13px;
}

.csp-s-b3da0eaa37 {
    display: block;
    margin-bottom: 8px;
    color: #2d3748;
    font-weight: 600;
}

.csp-s-b4622a6a9e {
    width: 100%;
    border-collapse: collapse;
    background: white;
}

.csp-s-b46b55eeea {
    color: #667eea;
}

.csp-s-b63d6b0ce1 {
    color: #744210;
    font-weight: 600;
    margin-bottom: 4px;
}

.csp-s-b75fad0009 {
    margin-bottom: 20px;
}

.csp-s-b7f1eaaef7 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    gap: 16px;
    flex-wrap: wrap;
}

.csp-s-b87c794ea0 {
    color: #667eea;
    font-weight: 600;
    font-size: 16px;
}

.csp-s-b87efa5bc3 {
    font-size: 16px;
}

.csp-s-ba2d9e43dd {
    color: #667eea;
    margin-bottom: 30px;
}

.csp-s-bc3e04b51c {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 20px;
    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
    border-bottom: 1px solid #e2e8f0;
}

.csp-s-bc71b42e50 {
    margin-bottom: 24px;
    color: #333;
    font-size: 20px;
    font-weight: 600;
    text-align: center;
}

.csp-s-bd34f19c2a {
    padding: 12px;
    color: #4a5568;
    font-size: 14px;
}

.csp-s-bedfb0e716 {
    background: linear-gradient(135deg, #48bb78 0%, #38a169 100%);
    padding: 25px;
    border-radius: 12px;
    color: white;
}

.csp-s-bf344d2817 {
    width:240px;
    height:240px;
    border:1px solid #e2e8f0;
    border-radius:12px;
    padding:12px;
    background:#fff;
    object-fit:contain;
}

.csp-s-bfac715669 {
    display: flex;
    gap: 12px;
    justify-content: center;
    margin-top: 25px;
}

.csp-s-bfe640dc4b {
    text-align: center;
    margin-top: 20px;
    display: flex;
    justify-content: center;
    gap: 15px;
    align-items: center;
}

.csp-s-c060137cb7 {
    display:flex;
    align-items:flex-start;
    justify-content:flex-end;
    margin-bottom:12px;
    min-height:28px;
}

.csp-s-c07aac7446 {
    color: #22543d;
}

.csp-s-c2bafe49ca {
    flex-shrink: 0;
}

.csp-s-c4a2c401c9 {
    padding: 6px 12px;
    font-size: 12px;
}

.csp-s-c6abccdfe3 {
    display: inline-flex;
    align-items: center;
    color: #1e293b;
    font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
}

.csp-s-c6e41d0536 {
    color:#38a169;
}

.csp-s-c6eddc904b {
    flex: 0 0 160px;
    background:#48bb78;
}

.csp-s-c731ea33cf {
    color: #666;
    margin-bottom: 32px;
    font-size: 15px;
    text-align: center;
    line-height: 1.6;
}

.csp-s-c7856aebaa {
    margin-bottom: 20px;
    color: #667eea;
}

.csp-s-c7b3b7162a {
    padding: 6px 12px;
    font-size: 12px;
    background: #fee2e2;
    color: #c53030;
    border: none;
    border-radius: 6px;
    cursor: pointer;
}

.csp-s-c81f5a4778 {
    display:none;
    color:#e53e3e;
    font-size:12px;
    margin:-6px 0 12px 0;
}

.csp-s-c875728bd9 {
    padding: 8px 20px;
    font-size: 13px;
}

.csp-s-c8be1ccba6 {
    display:none;
}

.csp-s-c91fa07490 {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.csp-s-c9a7335caf {
    display: flex;
    align-items: center;
    gap: 16px;
}

.csp-s-ca1bfb8719 {
    width: 100%;
    padding: 5px 12px;
    border: 2px solid #e2e8f0;
    border-radius: 8px;
    font-size: 14px;
    color: #2d3748;
    background: white;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-sizing: border-box;
    min-height: 34px;
}

.csp-s-ca2fa2b4eb {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    padding: 25px;
    border-radius: 12px;
    color: white;
}

.csp-s-ca53c205d2 {
    padding: 18px 20px;
    height: 240px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.csp-s-cb4393d8d6 {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
}

.csp-s-cc64a663aa {
    position: relative;
    width: 158px;
    flex-shrink: 0;
}

.csp-s-cf3a385725 {
    flex: 0 0 160px;
}

.csp-s-cf594752a2 {
    color: #718096;
}

.csp-s-cf5fc4502c {
    display: none;
    gap: 8px;
    margin-left: 12px;
}

.csp-s-cfb76d2bb3 {
    padding: 15px;
}

.csp-s-d0db0c136f {
    color:#4a5568;
    font-size:13px;
    margin-top:3px;
}

.csp-s-d11c6a35aa {
    background: rgba(255,255,255,0.3);
    border: none;
    color: white;
    padding: 6px 14px;
    border-radius: 6px;
    font-size: 13px;
    cursor: pointer;
    font-weight: 500;
}

.csp-s-d18f1db50c {
    margin-bottom: 30px;
    color: #333;
    font-size: 20px;
    font-weight: 600;
    text-align: center;
}

.csp-s-d1e0e1150f {
    color: #2f855a;
    margin-bottom: 10px;
}

.csp-s-d24c1fe081 {
    display:flex;
    gap:15px;
    justify-content:center;
}

.csp-s-d27e75786b {
    margin: 10px 0 0;
    color: #48bb78;
    font-size: 13px;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.csp-s-d43e2f51ca {
    position: relative;
    min-width: 220px;
    display: none;
}

.csp-s-d46e72bdef {
    color: white;
    font-size: 16px;
    font-weight: 600;
}

.csp-s-d487511227 {
    text-align:center;
    padding:30px;
    color:#718096;
}

.csp-s-d5f7d6ccce {
    display: flex;
    gap: 10px;
}

.csp-s-d61967193e {
    color: #c53030;
    margin-bottom: 15px;
}

.csp-s-d63d6ced57 {
    text-align: center;
    color: #666;
    margin-bottom: 32px;
}

.csp-s-d695753f76 {
    max-width: 900px;
    padding: 32px;
    position: relative;
}

.csp-s-d768c8bee5 {
    margin-bottom:16px;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}

.csp-s-d76b56bf2f {
    background: rgba(255,255,255,0.9);
    border: none;
    color: #667eea;
    padding: 6px 14px;
    border-radius: 6px;
    font-size: 13px;
    cursor: pointer;
    font-weight: 500;
}

.csp-s-d819ecbab0 {
    font-size: 18px;
    font-weight: bold;
}

.csp-s-d982937dda {
    margin-bottom:4px;
}

.csp-s-daaa8adaa0 {
    flex:0 0 160px;
}

.csp-s-dc271cfe4e {
    max-width: 600px;
}

.csp-s-dc7d8bac77 {
    border: 2px solid #e2e8f0;
    border-radius: 12px;
    padding: 20px;
    background: #f7fafc;
}

.csp-s-dd62239258 {
    padding: 10px 32px;
    background: #e2e8f0;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    cursor: pointer;
    color: #4a5568;
}

.csp-s-dd7272cd7c {
    margin-bottom: 30px;
}

.csp-s-e02112bd67 {
    color: #a0aec0;
    font-size: 12px;
}

.csp-s-e0de7d1416 {
    color: #1f5fbf;
    text-decoration: none;
    font-weight: 600;
}

.csp-s-e10f359e9e {
    display: flex;
    gap: 10px;
    margin-bottom: 25px;
}

.csp-s-e27cdfe74b {
    color: #975a16;
}

.csp-s-e3191ff860 {
    color: #718096;
    font-size: 16px;
    margin-bottom: 20px;
}

.csp-s-e389f27cbe {
    color: #e53e3e;
}

.csp-s-e3bbae115f {
    color:#4a5568;
    font-size:13px;
    line-height:1.7;
}

.csp-s-e4607955ac {
    margin:0 0 22px;
    color:#718096;
    font-size:14px;
    line-height:1.6;
}

.csp-s-e4ad4a163b {
    margin-bottom:8px;
}

.csp-s-e5c9c48a36 {
    color: #2f855a;
}

.csp-s-e61944291f {
    background:#fff;
    border-radius:14px;
    padding:32px 36px;
    max-width:400px;
    width:90%;
    text-align:center;
    box-shadow:0 20px 60px rgba(0,0,0,0.15);
    animation:scaleIn .25s ease;
}

.csp-s-e77d3b4023 {
    min-height: 420px;
}

.csp-s-e7c86ea9ac {
    margin-bottom: 18px;
    color: #333;
    font-size: 20px;
    font-weight: 600;
    text-align: center;
}

.csp-s-e8f5c76362 {
    color: #718096;
    text-align: center;
}

.csp-s-e94f14ea93 {
    color: #94a3b8;
    font-weight: 500;
}

.csp-s-ea242c9f4d {
    text-align: center;
    margin-bottom: 12px;
    color: #1a1a1a;
    font-size: 24px;
}

.csp-s-ea892c664d {
    color: #2d3748;
}

.csp-s-eac03a61d4 {
    text-align: center;
    margin-bottom: 12px;
}

.csp-s-eb7e8501e1 {
    margin-bottom: 18px;
}

.csp-s-ecce71ab40 {
    flex: 0 0 120px;
    background: #48bb78;
}

.csp-s-ecd38760ff {
    color: #718096;
    font-size: 13px;
    margin-bottom: 20px;
}

.csp-s-ecd536865a {
    display:none;
    color:#e53e3e;
    font-size:12px;
    margin-top:4px;
}

.csp-s-ee3d55bf99 {
    flex: 1;
}

.csp-s-efd85b92cb {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.csp-s-f267eb36ca {
    color: #1e293b;
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;
}

.csp-s-f2892a2e8a {
    display: none;
}

.csp-s-f29a355114 {
    flex:0 0 140px;
}

.csp-s-f2d5b2e270 {
    display: inline-block;
    width: 1px;
    height: 16px;
    margin: 0 10px;
    background: #cbd5e1;
}

.csp-s-f38df842f4 {
    color: #a0aec0;
    font-size: 12px;
    margin-left: 8px;
}

.csp-s-f40f38a7da {
    padding: 0 20px 16px;
    max-height: 320px;
    overflow-y: auto;
}

.csp-s-f487077dcd {
    display: none;
    margin: 0 0 30px;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
}

.csp-s-f49eb93c7e {
    background: #c6f6d5;
    color: #22543d;
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 12px;
}

.csp-s-f55d8c9d87 {
    background: white;
    padding: 30px;
    border-radius: 12px;
    max-width: 400px;
    width: 90%;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}

.csp-s-f6dba3ca67 {
    color: #4a5568;
    text-align: center;
    margin-bottom: 0;
    line-height: 1.8;
    font-size: 15px;
}

.csp-s-f718e81ddf {
    display:block;
    margin-bottom:6px;
    color:#2d3748;
    font-weight:600;
    font-size:13px;
}

.csp-s-f7cf2d1f42 {
    width:100%;
    padding:12px 14px;
    border:2px solid #e2e8f0;
    border-radius:8px;
    font-size:14px;
    background:#fff;
    color:#2d3748;
}

.csp-s-f8d354e012 {
    padding: 20px;
}

.csp-s-f8e5c51a53 {
    margin-top: 8px;
    font-size: 13px;
    min-height: 20px;
    width: 78%;
}

.csp-s-fa90255313 {
    display: block;
    margin: 20px auto 0;
    text-align: center;
}

.csp-s-fb2336af42 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    color: #e53e3e;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    flex-shrink: 0;
}

.csp-s-fb3ef80fdd {
    color: #a0aec0;
}

.csp-s-fb9057b616 {
    display: flex;
    align-items: center;
    gap: 10px;
}

.csp-s-fcb45549b9 {
    color: #2d3748;
    text-align: center;
    margin-bottom: 12px;
    line-height: 1.8;
    font-size: 15px;
}

.csp-s-fd2967ab12 {
    background:#ebf8ff;
    color:#2b6cb0;
    padding:2px 8px;
    border-radius:999px;
    font-size:12px;
}

.csp-s-ffa089e03c {
    max-width: 520px;
}

.csp-s-ffdac66749 {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

/* Shared CSP migration utilities */
.csp-form-control {
    width: 100%;
    padding: 12px 15px;
    border: 2px solid #e2e8f0;
    border-radius: 8px;
}

.csp-flex-1 {
    flex: 1;
}

.csp-hidden {
    display: none !important;
}

.csp-dropdown-open {
    display: block !important;
}

.csp-status-muted {
    color: #718096 !important;
}

.csp-status-placeholder {
    color: #a0aec0 !important;
}

.csp-status-normal {
    color: #2d3748 !important;
}

.csp-status-success {
    color: #48bb78 !important;
}

.csp-status-warning {
    color: #92400e !important;
}

.csp-status-offline {
    color: #9a3412 !important;
}

.csp-status-error {
    color: #e53e3e !important;
}

.csp-control-invalid {
    border-color: #e53e3e !important;
}

.csp-control-default {
    border-color: #e2e8f0 !important;
}

.csp-register-submit-ready {
    background: #ff6b35 !important;
    color: #ffffff !important;
    cursor: pointer !important;
}

.csp-register-submit-disabled {
    background: #e2e8f0 !important;
    color: #a0aec0 !important;
    cursor: not-allowed !important;
}

.csp-network-hint {
    display: block;
    border: 1px solid #e2e8f0;
}

.csp-network-hint-default {
    background: #f7fafc !important;
    color: #4a5568 !important;
    border-color: #e2e8f0 !important;
}

.csp-network-hint-offline {
    background: #fff7ed !important;
    color: #9a3412 !important;
    border-color: #fdba74 !important;
}

.csp-network-hint-weak {
    background: #fffbeb !important;
    color: #92400e !important;
    border-color: #fcd34d !important;
}

.csp-dropdown-item {
    padding: 10px 15px;
    cursor: pointer;
    color: #2d3748;
    font-size: 14px;
    display: flex;
    align-items: center;
}

.csp-dropdown-item:hover {
    background: #f7fafc;
}

.csp-dropdown-empty {
    padding: 10px 15px;
    color: #e53e3e;
    font-size: 14px;
}

.csp-dropdown-action {
    padding: 10px 15px;
    cursor: pointer;
    color: #667eea;
    font-size: 14px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-weight: 600;
}

.csp-dropdown-arrow-open {
    transform: translateY(-35%) rotate(225deg) !important;
}

.csp-control-focus {
    border-color: #22c55e !important;
    box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.10) !important;
}

.csp-disabled-control {
    opacity: 0.65 !important;
    cursor: not-allowed !important;
}

.declaration-generate-mode-option.is-selected {
    color: #22c55e !important;
    background: #f8fafc !important;
    font-weight: 600 !important;
}

.csp-dropdown-action:hover {
    background: #f7fafc;
}

.csp-dropdown-action-disabled {
    cursor: default !important;
    color: #718096 !important;
}

.csp-dropdown-company-item {
    padding: 10px 15px;
    cursor: pointer;
    color: #2d3748;
    font-size: 14px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.csp-dropdown-company-item:hover {
    background: #f7fafc;
}

.csp-company-field-group {
    position: relative;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 16px;
    margin-bottom: 14px;
    background: #f8fafc;
}

.csp-company-default-badge {
    display: inline-flex;
    background: #c6f6d5;
    color: #22543d;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
}

.csp-company-default-button {
    display: inline-flex;
    margin-left: auto;
    padding: 4px 10px;
    font-size: 12px;
    background: #edf2f7;
    color: #4a5568;
    border: 1px solid #cbd5e0;
    border-radius: 999px;
    cursor: pointer;
}

.csp-company-form-label {
    display: block;
    margin-bottom: 6px;
    color: #2d3748;
    font-weight: 600;
    font-size: 13px;
}

.csp-company-form-control {
    width: 100%;
    padding: 10px 12px;
    border: 2px solid #e2e8f0;
    border-radius: 6px;
    font-size: 14px;
    box-sizing: border-box;
    outline: none;
    transition: border-color .2s;
}

.csp-company-form-select {
    appearance: none;
    background: #fff;
}

.csp-platform-usage-row-fallback {
    display: flex;
    align-items: center;
    gap: 22px;
    color: var(--platform-color, #1f2937);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.9;
    white-space: nowrap;
}


/* Runtime state utility classes */
.csp-display-block { display: block !important; }
.csp-display-flex { display: flex !important; }
.csp-display-inline-block { display: inline-block !important; }
.csp-display-inline-flex { display: inline-flex !important; }
.csp-border-success { border-color: #48bb78 !important; }
.csp-border-error { border-color: #e53e3e !important; }
.csp-upload-drag-active { background: #f0fff4 !important; border-color: #48bb78 !important; }
.csp-download-title-spaced { margin-right: 12px !important; }
.csp-download-page-btn {
    min-width: 32px;
    height: 32px;
    padding: 0 10px;
    border-radius: 6px;
    border: 1px solid #e2e8f0;
    background: #fff;
    color: #4a5568;
    cursor: pointer;
    font-size: 13px;
}
.csp-download-page-btn.is-active {
    border-color: #667eea;
    background: #667eea;
    color: #fff;
}
.csp-progress-success { background-color: #48bb78 !important; }
.csp-progress-purple { background-color: #9f7aea !important; }
.csp-progress-teal { background-color: #38b2ac !important; }
.csp-progress-info { background-color: #4299e1 !important; }
.csp-progress-0 { width: 0% !important; }
.csp-progress-1 { width: 1% !important; }
.csp-progress-2 { width: 2% !important; }
.csp-progress-3 { width: 3% !important; }
.csp-progress-4 { width: 4% !important; }
.csp-progress-5 { width: 5% !important; }
.csp-progress-6 { width: 6% !important; }
.csp-progress-7 { width: 7% !important; }
.csp-progress-8 { width: 8% !important; }
.csp-progress-9 { width: 9% !important; }
.csp-progress-10 { width: 10% !important; }
.csp-progress-11 { width: 11% !important; }
.csp-progress-12 { width: 12% !important; }
.csp-progress-13 { width: 13% !important; }
.csp-progress-14 { width: 14% !important; }
.csp-progress-15 { width: 15% !important; }
.csp-progress-16 { width: 16% !important; }
.csp-progress-17 { width: 17% !important; }
.csp-progress-18 { width: 18% !important; }
.csp-progress-19 { width: 19% !important; }
.csp-progress-20 { width: 20% !important; }
.csp-progress-21 { width: 21% !important; }
.csp-progress-22 { width: 22% !important; }
.csp-progress-23 { width: 23% !important; }
.csp-progress-24 { width: 24% !important; }
.csp-progress-25 { width: 25% !important; }
.csp-progress-26 { width: 26% !important; }
.csp-progress-27 { width: 27% !important; }
.csp-progress-28 { width: 28% !important; }
.csp-progress-29 { width: 29% !important; }
.csp-progress-30 { width: 30% !important; }
.csp-progress-31 { width: 31% !important; }
.csp-progress-32 { width: 32% !important; }
.csp-progress-33 { width: 33% !important; }
.csp-progress-34 { width: 34% !important; }
.csp-progress-35 { width: 35% !important; }
.csp-progress-36 { width: 36% !important; }
.csp-progress-37 { width: 37% !important; }
.csp-progress-38 { width: 38% !important; }
.csp-progress-39 { width: 39% !important; }
.csp-progress-40 { width: 40% !important; }
.csp-progress-41 { width: 41% !important; }
.csp-progress-42 { width: 42% !important; }
.csp-progress-43 { width: 43% !important; }
.csp-progress-44 { width: 44% !important; }
.csp-progress-45 { width: 45% !important; }
.csp-progress-46 { width: 46% !important; }
.csp-progress-47 { width: 47% !important; }
.csp-progress-48 { width: 48% !important; }
.csp-progress-49 { width: 49% !important; }
.csp-progress-50 { width: 50% !important; }
.csp-progress-51 { width: 51% !important; }
.csp-progress-52 { width: 52% !important; }
.csp-progress-53 { width: 53% !important; }
.csp-progress-54 { width: 54% !important; }
.csp-progress-55 { width: 55% !important; }
.csp-progress-56 { width: 56% !important; }
.csp-progress-57 { width: 57% !important; }
.csp-progress-58 { width: 58% !important; }
.csp-progress-59 { width: 59% !important; }
.csp-progress-60 { width: 60% !important; }
.csp-progress-61 { width: 61% !important; }
.csp-progress-62 { width: 62% !important; }
.csp-progress-63 { width: 63% !important; }
.csp-progress-64 { width: 64% !important; }
.csp-progress-65 { width: 65% !important; }
.csp-progress-66 { width: 66% !important; }
.csp-progress-67 { width: 67% !important; }
.csp-progress-68 { width: 68% !important; }
.csp-progress-69 { width: 69% !important; }
.csp-progress-70 { width: 70% !important; }
.csp-progress-71 { width: 71% !important; }
.csp-progress-72 { width: 72% !important; }
.csp-progress-73 { width: 73% !important; }
.csp-progress-74 { width: 74% !important; }
.csp-progress-75 { width: 75% !important; }
.csp-progress-76 { width: 76% !important; }
.csp-progress-77 { width: 77% !important; }
.csp-progress-78 { width: 78% !important; }
.csp-progress-79 { width: 79% !important; }
.csp-progress-80 { width: 80% !important; }
.csp-progress-81 { width: 81% !important; }
.csp-progress-82 { width: 82% !important; }
.csp-progress-83 { width: 83% !important; }
.csp-progress-84 { width: 84% !important; }
.csp-progress-85 { width: 85% !important; }
.csp-progress-86 { width: 86% !important; }
.csp-progress-87 { width: 87% !important; }
.csp-progress-88 { width: 88% !important; }
.csp-progress-89 { width: 89% !important; }
.csp-progress-90 { width: 90% !important; }
.csp-progress-91 { width: 91% !important; }
.csp-progress-92 { width: 92% !important; }
.csp-progress-93 { width: 93% !important; }
.csp-progress-94 { width: 94% !important; }
.csp-progress-95 { width: 95% !important; }
.csp-progress-96 { width: 96% !important; }
.csp-progress-97 { width: 97% !important; }
.csp-progress-98 { width: 98% !important; }
.csp-progress-99 { width: 99% !important; }

/* Project selection dialog */
@keyframes projectSelectionFadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes projectSelectionScaleIn { from { opacity: 0; transform: scale(0.96); } to { opacity: 1; transform: scale(1); } }
.project-selection-empty { padding:48px 16px;color:#64748b;font-size:14px;line-height:1.8;text-align:center; }
.project-selection-field { font-size:13px;color:#2d3748;line-height:1.7;word-break:break-word; }
.project-selection-cell { position:relative;height:100%;min-height:168px;padding:12px 16px;border-radius:10px;border:2px solid #e2e8f0;background:#fff;cursor:pointer;display:flex;flex-direction:column;gap:8px;transition:all .2s ease;box-sizing:border-box; }
.project-selection-cell.is-selected { border-color:#667eea;background:#eef2ff;box-shadow:0 8px 20px rgba(102,126,234,0.14); }
.project-selection-badge { position:absolute;top:10px;right:12px;display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:#667eea;color:#fff;font-size:12px;font-weight:600; }
.project-selection-td { width:33.33%;padding:8px;vertical-align:top; }
.project-selection-overlay { position:fixed;inset:0;background:rgba(15,23,42,0.45);display:flex;justify-content:center;align-items:center;z-index:2500;padding:24px;box-sizing:border-box;animation:projectSelectionFadeIn .2s ease; }
.project-selection-dialog { width:min(980px,100%);max-height:min(760px,90vh);background:#fff;border-radius:16px;box-shadow:0 24px 80px rgba(15,23,42,0.28);display:flex;flex-direction:column;overflow:hidden;animation:projectSelectionScaleIn .22s ease; }
.project-selection-header { padding:20px 24px 12px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:flex-start;gap:16px; }
.project-selection-header-content { min-width:0;flex:1; }
.project-selection-title { margin:0 0 8px;font-size:20px;color:#1e293b; }
.project-selection-subtitle { margin:0;font-size:13px;color:#64748b;line-height:1.6; }
.project-selection-search { width:240px;max-width:100%;padding:10px 14px;border:1px solid #cbd5e1;border-radius:10px;font-size:13px;color:#1e293b;outline:none;box-sizing:border-box;background:#fff;flex-shrink:0; }
.project-selection-search:focus { border-color:#667eea; }
.project-selection-body { padding:16px 16px 8px;overflow:auto;background:#f8fafc; }
.project-selection-table { width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed; }
.project-selection-footer { padding:16px 24px 20px;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:12px;background:#fff; }
.project-selection-button { min-width:96px;padding:8px 18px; }
.project-selection-confirm { min-width:96px;padding:8px 18px;background:#667eea;border-color:#667eea; }
.project-selection-confirm:disabled { opacity:0.6;cursor:not-allowed; }

/* Quote preview generated DOM */
.quote-preview-section { margin-bottom:12px;padding:10px 14px;background:linear-gradient(135deg, #f0f4ff 0%, #f5f3ff 100%);border-radius:8px;border-left:4px solid #667eea; }
.quote-preview-title { margin-bottom:16px;color:#2d3748;font-size:14px;font-weight:600; }
.quote-preview-table-wrap { overflow-x:auto;border:1px solid #e2e8f0;border-radius:8px; }
.quote-preview-table { width:100%;border-collapse:collapse;font-size:13px; }
.quote-preview-table th { padding:10px 12px;background:#f8fafc;color:#475569;font-weight:600;border-bottom:2px solid #e2e8f0;white-space:nowrap; }
.quote-preview-table td { padding:8px 12px;border-bottom:1px solid #f1f5f9; }
.quote-preview-row-even { background:#fff; }
.quote-preview-row-odd { background:#f8fafc; }
.quote-preview-align-left { text-align:left; }
.quote-preview-align-center { text-align:center; }
.quote-preview-align-right { text-align:right; }
.quote-preview-color-default { color:#2d3748; }
.quote-preview-color-muted { color:#64748b; }
.quote-preview-pagination { display:flex;justify-content:center;align-items:center;gap:12px;margin-top:20px;padding:12px;background:#f8fafc;border-radius:8px; }
.quote-preview-page-button { padding:8px 20px;background:#e2e8f0;color:#4a5568;border:none;border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s; }
.quote-preview-page-button:hover:not(:disabled) { background:#cbd5e1; }
.quote-preview-page-button:disabled { opacity:.5;cursor:not-allowed; }
.quote-preview-page-input-wrap { display:flex;align-items:center;gap:4px;color:#4a5568;font-size:13px;font-weight:500; }
.quote-preview-page-input { width:48px;text-align:center;border:1px solid #cbd5e1;border-radius:4px;padding:4px 2px;font-size:13px;color:#4a5568;outline:none;-moz-appearance:textfield; }
.quote-preview-page-input:focus { border-color:#667eea; }
.quote-preview-export-button { padding:8px 20px;background:linear-gradient(135deg, #667eea 0%, #764ba2 100%);color:white;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px rgba(102,126,234,.25); }
.quote-preview-export-button:hover { transform:translateY(-1px); }
.quote-preview-switch-active { background:rgba(255,255,255,0.9) !important;color:#667eea !important; }
.quote-preview-switch-inactive { background:rgba(255,255,255,0.3) !important;color:white !important; }

/* Centered generic dialog */
.csp-centered-dialog-overlay { position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.35);display:flex;justify-content:center;align-items:center;z-index:2000;animation:fadeIn .2s ease; }
.csp-centered-dialog-button { padding:10px 36px;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s; }
.csp-centered-dialog-button-success { background:#48bb78; }
.csp-centered-dialog-button-error { background:#e53e3e; }
.csp-centered-dialog-button-warning { background:#d69e2e; }
.csp-centered-dialog-button-info { background:#4299e1; }
