.trial-page {
    --trial-ink: #092123;
    --trial-muted: #536e71;
    --trial-teal: #006d68;
    --trial-border: #d2e2e3;
    --trial-tint: #daf5f1;
    margin: 0;
    min-height: 100vh;
    background: radial-gradient(ellipse at top left, #e7f4f1, #f1f8f7 70%);
    color: var(--trial-ink);
    font-family: 'Avenir Next', Avenir, 'Segoe UI', sans-serif;
    font-size: 16px;
    line-height: 1.5;
}
.trial-main { padding: 28px 24px 0; }
.trial-page a { color: var(--trial-teal); text-decoration: none; }
.trial-page a:hover { text-decoration: underline; }
.trial-page a:focus-visible, .trial-page button:focus-visible, .trial-page input:focus-visible {
    outline: 3px solid var(--trial-teal);
    outline-offset: 4px;
}
.trial-card {
    max-width: 600px;
    margin: 0 auto;
    padding: 44px;
    background: #fff;
    border: 1px solid var(--trial-border);
    border-radius: 30px;
    box-shadow: 0 24px 40px -22px #326e6a45;
}
.trial-badge {
    display: inline-block;
    padding: 4px 14px;
    border-radius: 30px;
    background: var(--trial-tint);
    color: var(--trial-teal);
    font-size: 15px;
    font-weight: 700;
}
.trial-card h1 { margin: 20px 0 10px; color: var(--trial-ink); font-size: 34px; font-weight: 700; letter-spacing: -1.1px; line-height: 1.16; }
.trial-card p { font-size: inherit; line-height: inherit; }
.trial-intro { margin: 0 0 30px; color: var(--trial-muted); font-size: 17px !important; overflow-wrap: anywhere; }
.trial-intro strong { color: var(--trial-ink); font-weight: 600; }
.trial-google { margin: 0 0 26px; text-align: center; }
.trial-google section { margin: 0 !important; }
.trial-google p { margin: 8px 0 0; color: var(--trial-muted); font-size: 14px; }
.trial-google #google-identity-button { display: flex; justify-content: center; min-height: 44px; }
.trial-google #google-identity-error:empty { display: none; }
.trial-divider { display: flex; align-items: center; gap: 14px; margin: 28px 0; color: var(--trial-muted); font-size: 14px; font-weight: 600; text-transform: uppercase; }
.trial-divider::before, .trial-divider::after { content: ''; flex: 1; height: 1px; background: var(--trial-border); }
.trial-form .form-group { margin-bottom: 20px; }
.trial-form label { color: var(--trial-ink); font-size: 16px; }
.trial-form .form-control {
    height: 54px;
    margin-top: 7px;
    padding: 12px 18px;
    border: 1px solid var(--trial-border);
    border-radius: 22px;
    background: #f1f8f7;
    color: var(--trial-ink);
    font: inherit;
    box-shadow: none;
}
.trial-form .form-control::placeholder { color: var(--trial-muted); opacity: 1; }
.trial-form .form-control:focus { border-color: var(--trial-teal); }
.trial-password { position: relative; }
.trial-password input { padding-right: 78px !important; }
.trial-password-toggle { position: absolute; right: 14px; top: 40px; border: 0; padding: 4px; background: transparent; color: var(--trial-teal); font: inherit; font-size: 14px; cursor: pointer; }
.trial-plans { min-width: 0; margin: 28px 0 12px; padding: 0; border: 0; }
.trial-plans legend { width: auto; margin-bottom: 14px; font-size: 17px; font-weight: 500; line-height: 1.5; }
.trial-plan-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.trial-plan-option { position: relative; display: block; margin: 0; cursor: pointer; }
.trial-plan-option input[type=radio] { position: absolute; width: 1px; height: 1px; margin: 0; opacity: 0; }
.trial-plan-content { display: flex; flex-direction: column; height: 100%; padding: 18px; border: 1px solid var(--trial-border); border-radius: 25px; }
.trial-plan-option:has(input:checked) .trial-plan-content, .trial-featured { background: var(--trial-tint); border-color: var(--trial-teal); box-shadow: 0 0 0 2px #006d6850; }
.trial-plan-option:has(input:focus-visible) .trial-plan-content { outline: 3px solid var(--trial-teal); outline-offset: 5px; }
.trial-plan-option:hover .trial-plan-content { border-color: var(--trial-teal); }
.trial-plan-name { display: block; margin-bottom: 8px; font-size: 18px; font-weight: 700; }
.trial-price { display: flex; align-items: baseline; flex-wrap: wrap; margin: 0; line-height: 1.2 !important; }
.trial-price strong { color: var(--trial-ink); font-size: 32px; font-weight: 750; letter-spacing: -1px; }
.trial-price > span { color: var(--trial-muted); font-size: 17px; }
.trial-plan-limit { margin-top: 8px; color: var(--trial-muted); font-size: 15px; }
.trial-plan-note { margin: 0 0 28px; color: var(--trial-muted); font-size: 14px !important; }
.trial-terms { display: flex; align-items: flex-start; gap: 14px; margin: 28px 0; padding: 20px; border-radius: 22px; background: #f1f4f8; }
.trial-terms input[type=checkbox] { position: static; flex: 0 0 26px; width: 26px; height: 26px; margin: 0; accent-color: var(--trial-teal); cursor: pointer; }
.trial-terms label { margin: 0; color: var(--trial-muted); line-height: 1.45; cursor: pointer; }
.trial-submit { display: block; width: 100%; padding: 17px 20px; border: 0; border-radius: 22px; background: linear-gradient(110deg, #006b65, #2d9682); color: #fff !important; font: inherit; font-size: 17px; font-weight: 700; text-align: center; box-shadow: 0 14px 30px -18px #346c6750; cursor: pointer; }
.trial-submit:hover { filter: brightness(.94); text-decoration: none !important; }
.trial-submit:disabled { opacity: .45; cursor: not-allowed; }
.trial-login, .trial-confirmation { margin: 28px 0 0; color: var(--trial-muted); text-align: center; }
.trial-confirmation { font-size: 15px !important; margin-top: 18px; }
.trial-cancel { margin: 28px auto 0; text-align: center; }
.trial-cancel a { color: var(--trial-muted); }
.trial-google-signup .trial-plans { margin-top: 36px; }
.trial-footer { margin: 30px 20px 16px; text-align: center; font-size: 12px; }
.trial-footer p { font-size: inherit; }
.trial-pricing { max-width: 1000px; }
.trial-pricing .trial-intro { margin-bottom: 38px; }
.trial-pricing .trial-plan-grid { gap: 20px; }
.trial-pricing-plan { padding: 28px; border: 1px solid var(--trial-border); border-radius: 26px; }
.trial-plan-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 22px; }
.trial-plan-heading h2 { margin: 0; color: var(--trial-ink); font-size: 24px; font-weight: 700; }
.trial-flexible { padding: 3px 12px; border-radius: 24px; background: var(--trial-teal); color: #fff; font-size: 13px; font-weight: 700; white-space: nowrap; }
.trial-pricing .trial-price strong { font-size: 38px; }
.trial-equivalent { margin: 8px 0 24px; color: var(--trial-muted); font-size: 14px !important; }
.trial-controller-limit { margin: 0 0 16px; }
.trial-pricing-plan ul { margin: 0; padding-left: 17px; color: var(--trial-muted); }
.trial-pricing-plan li { padding-left: 2px; margin-top: 10px; }
.trial-pricing-plan li::marker { color: var(--trial-teal); }
.trial-controller-info { margin-top: 42px; color: var(--trial-muted); }
.trial-controller-info h2 { margin: 0 0 18px; color: var(--trial-ink); font-size: 24px; font-weight: 700; letter-spacing: -.5px; }
.trial-controller-info p { margin-bottom: 16px; }
.trial-pricing-actions { display: flex; align-items: center; gap: 28px; margin-top: 36px; }
.trial-pricing-actions .trial-submit { width: auto; padding: 16px 28px; }
.trial-pricing-actions p { margin: 0; color: var(--trial-muted); }
@media (max-width: 650px) {
    .trial-main { padding: 16px 14px 0; }
    .trial-card { padding: 28px 24px; border-radius: 26px; }
    .trial-card h1 { font-size: 30px; }
    .trial-pricing .trial-plan-grid { grid-template-columns: 1fr; }
    .trial-pricing-actions { flex-direction: column; align-items: stretch; gap: 20px; text-align: center; }
}
@media (max-width: 380px) {
    .trial-card { padding: 24px 18px; }
    .trial-plan-grid { gap: 10px; }
    .trial-plan-content { padding: 14px 12px; }
    .trial-price strong { font-size: 29px; }
    .trial-plan-limit { font-size: 13px; }
    .trial-terms { padding: 16px; gap: 10px; }
    .trial-divider { gap: 8px; font-size: 12px; }
}

.trial-plan-option .form-check { margin: 0; padding: 0; min-height: 0; }

.trial-page .trial-submit { text-transform: none; letter-spacing: normal; margin: 0; }
.trial-google #google-identity-button { align-items: center; min-height: 54px; padding: 6px; background: #f1f8f7; border: 1px solid var(--trial-border); border-radius: 22px; }
.trial-pricing-plan.trial-featured { border-color: var(--trial-teal); }
.trial-page p { font-weight: 400; }
