/* Sign In Options Container */
.signin-options-container {
    padding: 0;
    max-width: none;
    width: 100%;
    background: transparent;
}

.configuration-section {
    background: #fff;
    border: 1px solid #dee2e6;
    border-radius: 3px;
    padding: 0;
    margin: 0;
}

/* Section Header */
.section-header {
    display: flex;
    height: 37px;
    background: #F4F9FD;
    color: #4F4F4F;
    font-family: Roboto;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
    letter-spacing: 0.16px;
    align-items: center;
    padding-left: 24px;
    width: 100%;
}

.section-title {
    display: flex;
    align-items: center;
}

.info-icon {
    margin-left: 8px;
    font-style: normal;
    display: flex;
    align-items: center;
}

.info-icon img {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    cursor: pointer;
    stroke-width: 2px;
    stroke: #4F4F4F;
}

/* Options List */
.options-list {
    display: flex;
    flex-direction: column;
    background: transparent;
    padding: 16px;
    gap: 12px;
}

/* Option Rows - Each option in its own block */
.option-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px;
    background: #fff;
    border: 1px solid #e9ecef;
    border-radius: 4px;
    min-height: 60px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

.option-row:last-child {
    border-bottom: 1px solid #e9ecef;
}

/* Option Content */
.option-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding-right: 12px;
}

.option-title {
    font-size: 14px;
    font-weight: 500;
    color: #343a40;
    margin: 0;
    line-height: 1.3;
}

.option-title-with-icon {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 1px;
}

.option-description {
    font-size: 12px;
    color: #6c757d;
    line-height: 1.4;
    margin: 0;
    margin-top: 1px;
}

/* Service Icons */
.service-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border-radius: 3px;
    flex-shrink: 0;
}

.geotab-icon {
    width: 18px;
    height: 18px;
    aspect-ratio: 1/1;
    border-radius: 0.5px;
    background: url('/Assets/svg/geotab-logo.png') lightgray 50% / cover no-repeat;
}

.icon-letter {
    color: white;
    font-size: 11px;
    font-weight: bold;
}

.microsoft-icon {
    background-color: transparent;
    position: relative;
}

.microsoft-squares {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 1px;
    width: 16px;
    height: 16px;
}

.microsoft-squares .square {
    width: 7px;
    height: 7px;
    border-radius: 1px;
}

.microsoft-squares .square:nth-child(1) {
    background-color: #f25022;
}

.microsoft-squares .square:nth-child(2) {
    background-color: #7fba00;
}

.microsoft-squares .square:nth-child(3) {
    background-color: #00a4ef;
}

.microsoft-squares .square:nth-child(4) {
    background-color: #ffb900;
}

.google-icon {
    width: 18px;
    height: 18px;
    background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48"><path fill="%234285F4" d="M45.12 24.5c0-1.56-.14-3.06-.4-4.5H24v8.51h11.84c-.51 2.75-2.06 5.08-4.39 6.64v5.52h7.11c4.16-3.83 6.56-9.47 6.56-16.17z"/><path fill="%2334A853" d="M24 46c5.94 0 10.92-1.97 14.56-5.33l-7.11-5.52c-1.97 1.32-4.49 2.1-7.45 2.1-5.73 0-10.58-3.87-12.31-9.07H4.34v5.7C7.96 41.07 15.4 46 24 46z"/><path fill="%23FBBC05" d="M11.69 28.18C11.25 26.86 11 25.45 11 24s.25-2.86.69-4.18v-5.7H4.34C2.85 17.09 2 20.45 2 24c0 3.55.85 6.91 2.34 9.88l7.35-5.7z"/><path fill="%23EA4335" d="M24 10.75c3.23 0 6.13 1.11 8.41 3.29l6.31-6.31C34.91 4.18 29.93 2 24 2 15.4 2 7.96 6.93 4.34 14.12l7.35 5.7c1.73-5.2 6.58-9.07 12.31-9.07z"/></svg>') center/contain no-repeat;
}

.apple-icon {
    width: 18px;
    height: 18px;
    background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17.05 20.28c-.98.95-2.05.8-3.08.35-1.09-.46-2.09-.48-3.24 0-1.44.62-2.2.44-3.06-.35C2.79 15.25 3.51 7.59 9.05 7.31c1.35.07 2.29.74 3.08.8 1.18-.24 2.31-.93 3.57-.84 1.51.12 2.65.72 3.4 1.8-3.12 1.87-2.38 5.98.48 7.13-.57 1.5-1.31 2.99-2.54 4.09l.01-.01zM12.03 7.25c-.15-2.23 1.66-4.07 3.74-4.25.29 2.58-2.34 4.5-3.74 4.25z" fill="%23000000"/></svg>') center/contain no-repeat;
}

/* Toggle Container */
.toggle-container {
    flex-shrink: 0;
}

/* Toggle Switch Styles */
.toggle-switch {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 22px;
}

.toggle-switch input {
    opacity: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    cursor: pointer;
    margin: 0;
    z-index: 1;
}

.toggle-slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ced4da;
    transition: .3s;
    border-radius: 22px;
}

.toggle-slider:before {
    position: absolute;
    content: "";
    height: 16px;
    width: 16px;
    left: 3px;
    bottom: 3px;
    background-color: white;
    transition: .3s;
    border-radius: 50%;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

input:checked+.toggle-slider {
    background-color: #007bff;
}

input:focus+.toggle-slider {
    box-shadow: 0 0 2px rgba(0, 123, 255, 0.3);
}

input:checked+.toggle-slider:before {
    transform: translateX(18px);
}

/* Hover Effects */
.option-row:hover {
    background-color: #f8f9fa;
    border-color: #dee2e6;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08);
}

.toggle-switch:hover .toggle-slider {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
}

.toggle-switch:hover .toggle-slider:before {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}

/* Clean hover transitions */
.option-row {
    transition: all 0.2s ease;
}

.toggle-slider,
.toggle-slider:before {
    transition: all 0.2s ease;
}