/**
 * critical-result-form.css
 * Critical CSS for above-the-fold result form rendering
 * These styles are inlined for immediate rendering
 */

/* Form layout and basic inputs that must render immediately */
#mrt-result-form .mrt-floating-input input[type] {
    border: none;
    background: transparent;
    outline: none;
    font-weight: var(--mrt-font-weight-normal);
    font-size: 14px;
    color: var(--mrt-text-primary);
    border-bottom: 1px solid var(--mrt-border);
    border-radius: var(--mrt-radius);
    padding: 8px 40px 8px var(--mrt-spacing-md);
    width: 100%;
    box-sizing: border-box;
    display: block;
    transition: var(--mrt-transition);
}

#mrt-result-form .mrt-floating-input input[type]:focus {
    border-bottom: 1px solid var(--mrt-primary);
}

#mrt-result-form .mrt-floating-label {
    position: absolute;
    left: var(--mrt-spacing-md);
    top: 8px;
    color: var(--mrt-text-secondary);
    font-size: 12px;
    pointer-events: none;
    transition: var(--mrt-transition);
    background: none !important;
    padding: 3px;
    transform-origin: left top;
    border-radius: var(--mrt-radius);
}

#mrt-result-form .mrt-floating-input input:focus + .mrt-floating-label,
#mrt-result-form
    .mrt-floating-input
    input:not(:placeholder-shown)
    + .mrt-floating-label {
    top: -22px;
    font-size: 10px;
    font-weight: 600;
}

.mrt-floating-input {
    position: relative;
    margin-bottom: var(--mrt-spacing-2xl);
}

/* Exercise name display */
#mrt-result-form .mrt-exercise-name-display {
    background: var(--mrt-bg-warm);
    font-family: "Merriweather", "Georgia", serif;
    font-weight: var(--mrt-font-weight-semibold);
    font-size: var(--mrt-font-size-lg);
    letter-spacing: 0.5px;
    border: none;
    padding: 25px var(--mrt-spacing-lg);
    border-radius: var(--mrt-radius);
    box-shadow:
        var(--mrt-shadow-sm),
        inset 0 0 0 1px rgba(0, 0, 0, 0.05);
    width: 100%;
    box-sizing: border-box;
    text-align: center;
    margin-bottom: var(--mrt-spacing-xl);
    transition: var(--mrt-transition);
    border-left: 4px solid var(--mrt-text-muted) !important;
    border-right: 4px solid var(--mrt-text-muted) !important;
    min-height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Exercise type toggle */
.mrt-exercise-type-toggle {
    position: relative;
    display: inline-flex;
    background: var(--mrt-bg-tertiary);
    border-radius: 18px;
    padding: 3px;
    border: 1px solid var(--mrt-border-light);
    margin-bottom: var(--mrt-spacing-xl);
    width: 100%;
    height: 48px;
    align-items: center;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.03);
    -webkit-tap-highlight-color: transparent;
    overflow: hidden;
}

.mrt-toggle-option {
    flex: 1;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 2;
    transition: var(--mrt-transition-smooth);
    font-weight: var(--mrt-font-weight-bold);
    font-size: 12px;
    color: #64748b;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    text-align: center;
}

/* Basic button styles for immediate interaction */
.mrt-save-btn {
    background-color: var(--mrt-primary);
    color: white !important;
    border: none !important;
    margin-bottom: 0 !important;
    width: 100%;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    font-size: var(--mrt-font-size-base);
    font-weight: var(--mrt-font-weight-semibold);
    padding: var(--mrt-spacing-lg) var(--mrt-spacing-lg);
    border-radius: var(--mrt-radius);
    cursor: pointer;
    transition: var(--mrt-transition-fast);
    font-family: inherit;
    box-sizing: border-box;
    text-align: center;
    min-height: 48px;
    -webkit-tap-highlight-color: transparent;
}

/* Loading states for immediate feedback */
.mrt-spinner {
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 3px solid rgba(0, 0, 0, 0.1);
    border-radius: 50%;
    border-top-color: var(--mrt-primary);
    animation: mrt-spin 1s ease-in-out infinite;
    margin-right: var(--mrt-spacing-sm);
    vertical-align: middle;
}

@keyframes mrt-spin {
    to {
        transform: rotate(360deg);
    }
}

/* Form layout */
.mrt-form-actions {
    display: flex;
    gap: var(--mrt-spacing-md);
    margin-bottom: var(--mrt-spacing-xl);
    width: 100%;
}

/* Critical responsive styles */
@media (max-width: 600px) {
    .mrt-floating-input {
        margin-bottom: var(--mrt-spacing-xl);
    }

    .mrt-exercise-type-toggle {
        margin-bottom: var(--mrt-spacing-lg);
    }
}

@media (max-width: 380px) {
    .mrt-form-actions {
        gap: var(--mrt-spacing-sm);
    }

    .mrt-save-btn {
        padding: var(--mrt-spacing-sm) var(--mrt-spacing-lg);
    }
}
