/* OAuth consent page (authorize.html). */

/* OAuth consent page (authorize.html): one centred card */
.consent-body {
    display: flex;
    min-height: 100vh;
    flex-direction: column;
    align-items: center;
    padding: 32px 16px calc(32px + var(--safe-bottom));
}

.consent-logo {
    margin-bottom: 20px;
    border-radius: var(--radius-md);
}

.consent-page {
    display: flex;
    width: 100%;
    justify-content: center;
}

.consent-card {
    display: flex;
    width: min(100%,420px);
    flex-direction: column;
    gap: 14px;
    padding: clamp(24px,6vw,36px);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    background: var(--color-surface);
    box-shadow: var(--shadow-raised);
}

.consent-title {
    margin: 0;
    font-size: 1.15rem;
    font-weight: 600;
    line-height: 1.45;
}

.consent-title strong {
    color: var(--color-accent);
}

.consent-who {
    margin: 0;
    color: var(--color-text-muted);
    font-size: .88rem;
}

.consent-link {
    padding: 0;
    border: 0;
    background: none;
    color: var(--color-accent);
    font: inherit;
    text-decoration: underline;
    cursor: pointer;
}

.consent-cancel {
    min-height: var(--touch-target);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    background: transparent;
    color: var(--color-text-muted);
    font-weight: 600;
    cursor: pointer;
}

.consent-cancel:hover {
    border-color: var(--color-border-strong);
    color: var(--color-text);
}

.consent-card .primary-btn {
    border-color: var(--color-accent-strong);
    background: var(--color-accent-strong);
    color: var(--color-on-strong);
    cursor: pointer;
}

.consent-card .primary-btn:disabled, .consent-cancel:disabled {
    opacity: .6;
    cursor: default;
}

.consent-error {
    width: min(100%,420px);
    margin: 0;
    padding: 10px 12px;
    border: 1px solid var(--color-danger);
    border-radius: var(--radius-sm);
    background: var(--color-danger-bg);
    color: var(--color-text);
    font-size: .88rem;
}
