:host {
    --primary-color: #b64d24;
    --border-radius: 12px;
    --input-background: #f8f9fa;
}

ion-card {
    margin: 0;
    border-radius: var(--border-radius);
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
    background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
    overflow: hidden;

    ion-card-header {
        padding: 24px;
        text-align: center;

        ion-card-title {
            margin-bottom: 24px;

            ion-segment {
                --background: var(--input-background);
                border-radius: var(--border-radius);
                padding: 4px;

                ion-segment-button {
                    --background: transparent;
                    --background-checked: white;
                    --color: #666;
                    --color-checked: var(--primary-color);
                    --indicator-color: transparent;
                    min-height: 44px;
                    font-size: 15px;
                    font-weight: 500;
                    letter-spacing: 0.5px;
                    text-transform: none;
                    border-radius: 8px;
                    transition: all 0.3s ease;

                    &::part(indicator) {
                        display: none;
                    }

                    &.segment-button-checked {
                        box-shadow: 0 2px 8px rgba(182, 77, 36, 0.15);
                    }
                }
            }
        }

        ion-card-subtitle {
            color: #666;
            font-size: 14px;
            margin-bottom: 16px;
        }
    }

    ion-card-content {
        padding: 0 24px 24px;

        ion-item {
            --background: var(--input-background);
            --border-radius: 10px;
            --padding-start: 12px;
            --padding-end: 12px;
            --min-height: 48px;
            margin-bottom: 10px;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
            transition: all 0.3s ease;

            ion-icon {
                font-size: 18px;
                color: #666;
                margin: 0 8px 0 0;
                min-width: 18px;
            }

            &.item-has-focus {
                ion-icon {
                    color: var(--primary-color);
                }
            }

            ion-input {
                --padding-start: 0;
                --padding-end: 8px;
                font-size: 14px;
            }
        }

        ion-button {
            --background: linear-gradient(135deg, var(--primary-color), #ff6b4a);
            --background-hover: linear-gradient(135deg, #ff6b4a, var(--primary-color));
            --border-radius: 10px;
            --box-shadow: 0 4px 16px rgba(182, 77, 36, 0.25);

            margin: 8px 0 0;
            height: 48px;
            font-size: 16px;
            font-weight: 600;
            letter-spacing: 0.5px;
            text-transform: none;
            transition: transform 0.3s ease;

            &:active {
                transform: scale(0.98);
            }
        }
    }
}

// 错误提示样式
.error-message {
    color: #ff4d4f;
    font-size: 13px;
    margin: 4px 0 16px;
    padding-left: 16px;
    display: flex;
    align-items: center;
    gap: 6px;
    animation: shake 0.6s ease;

    &::before {
        content: "!";
        width: 16px;
        height: 16px;
        background: #ff4d4f;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        color: white;
        font-size: 12px;
        font-weight: bold;
    }
}

@keyframes shake {

    0%,
    100% {
        transform: translateX(0);
    }

    25% {
        transform: translateX(-5px);
    }

    75% {
        transform: translateX(5px);
    }
}