/* ============================================================
   PUBLIC CUSTOMER REGISTRATION V1
   ============================================================ */

.customer-registration {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-top:24px;
}

.customer-registration__card {
    padding:22px;
    border:1px solid #e1e6ef;
    border-radius:14px;
    background:#fff;
    box-shadow:0 4px 14px rgba(24,39,75,.035);
}

.customer-registration__card:nth-child(3),
.customer-registration__card:nth-child(5) {
    grid-column:1 / -1;
}

.customer-registration__head {
    display:flex;
    align-items:flex-start;
    gap:12px;
    margin-bottom:20px;
    padding-bottom:14px;
    border-bottom:1px solid #edf0f5;
}

.customer-registration__number {
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 32px;
    width:32px;
    height:32px;
    border-radius:9px;
    background:#eef2ff;
    color:#435cca;
    font-size:.75rem;
    font-weight:800;
}

.customer-registration__head h3 {
    margin:1px 0 3px;
    font-size:1rem;
    color:#24364d;
}

.customer-registration__head p {
    margin:0;
    font-size:.76rem;
    line-height:1.45;
    color:#7c899b;
}

.customer-siret-row {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:9px;
}

.customer-siret-row .btn {
    white-space:nowrap;
}

.customer-lookup-status {
    min-height:20px;
    margin-top:7px;
    font-size:.76rem;
    color:#69778a;
}

.customer-lookup-status.is-success {
    color:#18794e;
}

.customer-lookup-status.is-error {
    color:#b42318;
}

.customer-address-row {
    display:grid;
    grid-template-columns:150px minmax(180px,1fr) minmax(150px,.7fr);
    gap:14px;
}

.customer-optional {
    font-weight:400;
    color:#8995a5;
}

.customer-switch-row {
    display:flex;
    align-items:center;
    gap:10px;
    min-height:44px;
    padding:11px 13px;
    border:1px solid #e1e6ed;
    border-radius:9px;
    background:#f8fafc;
    cursor:pointer;
    font-size:.82rem;
    font-weight:600;
}

.customer-switch-row input {
    width:17px;
    height:17px;
}

.customer-choice-row {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.customer-choice-row label {
    display:flex;
    align-items:center;
    gap:7px;
    padding:9px 11px;
    border:1px solid #e0e5ed;
    border-radius:9px;
    background:#fff;
    cursor:pointer;
    font-size:.78rem;
    font-weight:650;
}

.customer-choice-row label:has(input:checked) {
    border-color:#6176d9;
    background:#f2f5ff;
    color:#344bb8;
}

.customer-conditional {
    margin-top:18px;
    padding-top:18px;
    border-top:1px solid #edf0f4;
}

.customer-delivery-days {
    margin-top:22px;
    padding-top:18px;
    border-top:1px solid #edf0f4;
}

.customer-field-help {
    margin:-4px 0 10px;
    font-size:.72rem;
    color:#8793a4;
}

.customer-day-grid {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:7px;
}

.customer-day-grid label {
    position:relative;
    cursor:pointer;
}

.customer-day-grid input {
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.customer-day-grid span {
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:7px 8px;
    border:1px solid #dfe4ec;
    border-radius:8px;
    background:#fff;
    color:#647287;
    font-size:.72rem;
    font-weight:700;
}

.customer-day-grid input:checked + span {
    border-color:#5870d8;
    background:#eef2ff;
    color:#344bc0;
    box-shadow:0 0 0 2px rgba(88,112,216,.07);
}

.customer-day-grid label:first-child span {
    border-style:dashed;
}

#structure-fields[hidden],
.customer-conditional[hidden] {
    display:none !important;
}

@media (max-width:900px) {

    .customer-registration {
        grid-template-columns:1fr;
    }

    .customer-registration__card:nth-child(3),
    .customer-registration__card:nth-child(5) {
        grid-column:auto;
    }

    .customer-day-grid {
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
}

@media (max-width:620px) {

    .customer-registration__card {
        padding:16px;
    }

    .customer-address-row,
    .customer-siret-row {
        grid-template-columns:1fr;
    }

    .customer-day-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .customer-choice-row {
        flex-direction:column;
    }
}


/* ============================================================
   CUSTOMER PREFILL V1
   ============================================================ */

.customer-prefill {
    display:flex;
    gap:14px;
    margin-top:22px;
    padding:16px;
    border:1px solid #dfe5ef;
    border-radius:12px;
    background:#f8fafc;
}

.customer-prefill__icon {
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 36px;
    width:36px;
    height:36px;
    border-radius:10px;
    background:#eaf0ff;
    color:#4059c7;
    font-size:1.1rem;
    font-weight:800;
}

.customer-prefill__content {
    flex:1;
    min-width:0;
}

.customer-prefill__content h4 {
    margin:0 0 4px;
    font-size:.88rem;
    color:#273a52;
}

.customer-prefill__content > p {
    margin:0 0 12px;
    font-size:.75rem;
    line-height:1.45;
    color:#748197;
}

.customer-prefill__request,
.customer-prefill__verify {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:8px;
}

.customer-prefill__code {
    margin-top:14px;
    padding-top:14px;
    border-top:1px solid #e3e8ef;
}

.customer-prefill__code[hidden] {
    display:none !important;
}

.customer-prefill__status {
    min-height:20px;
    margin-top:9px;
    font-size:.73rem;
    line-height:1.45;
    color:#66758a;
}

.customer-prefill__status.is-success {
    color:#18794e;
    font-weight:600;
}

.customer-prefill__status.is-error {
    color:#b42318;
}

.customer-prefill__status.is-info {
    color:#4059b8;
}

@media (max-width:620px) {

    .customer-prefill {
        align-items:flex-start;
    }

    .customer-prefill__request,
    .customer-prefill__verify {
        grid-template-columns:1fr;
    }

    .customer-prefill__request .btn,
    .customer-prefill__verify .btn {
        width:100%;
    }
}

/* QUOTE_INSTALL_TRAVEL_INFO_V1 */
.quote-service-notice {
    margin-top: 16px;
    padding: 14px 16px;
    border: 1px solid #dfe5ef;
    border-radius: 10px;
    background: #f8fafc;
}

.quote-service-notice strong {
    display: block;
    margin-bottom: 5px;
    font-size: .88rem;
}

.quote-service-notice p {
    margin: 0;
    font-size: .78rem;
    line-height: 1.5;
    color: var(--clr-text-muted);
}

/* QUOTE_INSTALL_TRAVEL_INFO_V2 */
.quote-service-notice--important {
    margin-top: 18px;
}

.quote-service-notice__title {
    display: block;
    margin-bottom: 14px;
    font-size: .95rem;
}

.quote-service-notice__section + .quote-service-notice__section {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid #dfe5ef;
}

.quote-service-notice__section > strong {
    display: block;
    margin-bottom: 6px;
}

.quote-service-notice__section p {
    margin: 0 0 8px;
}

.quote-service-notice__section p:last-child {
    margin-bottom: 0;
}

.quote-service-notice__section ul {
    margin: 8px 0 0 18px;
    padding: 0;
}

.quote-service-notice__section li {
    margin-bottom: 6px;
    font-size: .78rem;
    line-height: 1.5;
}

.quote-service-notice__section li:last-child {
    margin-bottom: 0;
}

/* QUOTE_INSTALL_TRAVEL_INFO_V2 */
.quote-service-notice--important {
    margin-top: 18px;
}

.quote-service-notice__title {
    display: block;
    margin-bottom: 14px;
    font-size: .95rem;
}

.quote-service-notice__section + .quote-service-notice__section {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid #dfe5ef;
}

.quote-service-notice__section > strong {
    display: block;
    margin-bottom: 6px;
}

.quote-service-notice__section p {
    margin: 0 0 8px;
}

.quote-service-notice__section p:last-child {
    margin-bottom: 0;
}

.quote-service-notice__section ul {
    margin: 8px 0 0 18px;
    padding: 0;
}

.quote-service-notice__section li {
    margin-bottom: 6px;
    font-size: .78rem;
    line-height: 1.5;
}

.quote-service-notice__section li:last-child {
    margin-bottom: 0;
}

/* QUOTE_INSTALL_TRAVEL_INFO_V2 */
.quote-service-notice--important {
    margin-top: 18px;
    padding: 18px 20px;
    background: #fff8e8;
    border: 1px solid #f2d089;
    border-left: 5px solid #e2a93b;
    border-radius: 12px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.05);
}

.quote-service-notice__title {
    display: block;
    margin-bottom: 14px;
    font-size: 1rem;
    color: #7a4d00;
}

.quote-service-notice__section + .quote-service-notice__section {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid rgba(122, 77, 0, 0.12);
}

.quote-service-notice__section > strong {
    display: block;
    margin-bottom: 6px;
    color: #5f3d00;
    font-size: .92rem;
}

.quote-service-notice__section p {
    margin: 0 0 8px;
    color: #4b5563;
    line-height: 1.6;
}

.quote-service-notice__section p:last-child {
    margin-bottom: 0;
}

.quote-service-notice__section ul {
    margin: 8px 0 0 18px;
    padding: 0;
}

.quote-service-notice__section li {
    margin-bottom: 6px;
    font-size: .84rem;
    line-height: 1.5;
    color: #374151;
}

.quote-service-notice__section li:last-child {
    margin-bottom: 0;
}
