.has-links-footer { display:flex; flex-direction:column; min-height:100vh; min-height:100svh; }
.has-links-footer > main { flex:1 0 auto; min-height:0; min-width:0; max-width:100%; box-sizing:border-box; }
.google-links-footer { flex:none; margin-top:auto; padding:24px 32px; border-top:1px solid var(--border,#e5e5ea); background:var(--surface,#fff); color:var(--text-muted,#606069); font:13px/1.5 var(--font,Arial,sans-serif); text-align:start; letter-spacing:normal; box-sizing:border-box; }
.google-links-footer__inner { display:flex; align-items:center; gap:24px; max-width:var(--maxw,1080px); margin:0 auto; direction:ltr; }
.google-links-footer__links { display:flex; flex:1 1 auto; min-width:0; align-items:center; flex-wrap:wrap; gap:4px 20px; }
.google-links-footer__links a { display:inline-flex; align-items:center; min-height:40px; max-width:100%; color:inherit; text-decoration:none; white-space:normal; overflow-wrap:anywhere; font-weight:400; }
.google-links-footer__links a:hover { color:#202124; text-decoration:underline; }
.google-links-footer__links .google-links-footer__google { font-size:21px; letter-spacing:-.7px; margin-right:4px; color:var(--text,#202124); }
.google-links-footer a:focus-visible,.footer-language__select:focus-visible { outline:2px solid #1a73e8; outline-offset:4px; border-radius:2px; }
.footer-language { flex:0 0 170px; min-width:0; }
.footer-language__select { box-sizing:border-box; width:100%; min-height:44px; padding:8px 12px; border:1px solid var(--border,#e5e5ea); border-radius:var(--radius-sm,10px); background:var(--bg-subtle,#f9f9fb); color:var(--text,#202124); font:14px/1.5 var(--font,Arial,sans-serif); cursor:pointer; }
.footer-language__select option { background:#fff; color:#202124; }
.footer-language__error { margin:8px 0 0; color:#b3261e; }
.google-links-footer__notice { display:flex; flex:0 0 270px; box-sizing:border-box; min-width:0; flex-direction:column; gap:4px; padding:12px 14px; border:1px solid #ead7b5; border-radius:var(--radius-sm,10px); background:var(--warning-bg,#fff4e0); color:#674b1c; font:12px/1.5 var(--font,Arial,sans-serif); text-align:left; }
.google-links-footer__notice strong { font-size:12px; }
@media (max-width:1100px) { .google-links-footer__inner { flex-wrap:wrap; gap:20px; }.google-links-footer__links { flex-basis:65%; }.google-links-footer__notice { flex-basis:100%; } }
@media (max-width:600px) { .google-links-footer { padding:20px 16px; }.google-links-footer__links { flex-basis:100%; gap:4px 20px; }.footer-language { flex-basis:100%; }.google-links-footer__notice { box-sizing:border-box; width:100%; } }
[data-language-picker] { display: inline-flex; }
.language-trigger { display: inline-flex; align-items: center; gap: 7px; min-height: 38px; padding: 0 12px; border: 0; border-radius: 19px; background: #f1f3f4; color: #3c4043; font: 500 14px/1 var(--font); cursor: pointer; transition: background .2s ease, transform .2s ease, box-shadow .2s ease; }
.language-trigger:hover { background: #e8eaed; box-shadow: 0 1px 2px rgba(0,0,0,.12); transform: translateY(-1px); }.language-trigger:focus-visible { outline: 2px solid #1a73e8; outline-offset: 2px; }.language-trigger__globe { font-size: 18px; line-height: 1; }.language-trigger__code { font-size: 13px; letter-spacing: .35px; }.language-trigger__chevron { margin-top: -3px; color: #5f6368; font-size: 17px; }
.language-backdrop { position: fixed; inset: 0; z-index: 100; display: grid; place-items: start center; padding: 86px 20px 20px; background: rgba(32,33,36,.34); animation: language-fade-in .18s ease both; }.language-backdrop.is-closing { animation: language-fade-out .16s ease both; }.language-dialog { width: min(100%, 470px); max-height: min(680px, calc(100vh - 106px)); display: flex; flex-direction: column; overflow: hidden; border-radius: 20px; background: #fff; box-shadow: 0 12px 32px rgba(0,0,0,.25); animation: language-dialog-in .24s cubic-bezier(.2,0,0,1) both; }.language-backdrop.is-closing .language-dialog { animation: language-dialog-out .16s ease both; }.language-dialog__head { display: flex; align-items: center; justify-content: space-between; padding: 22px 22px 14px; }.language-dialog__head h2 { margin: 0; color: #202124; font-size: 22px; font-weight: 400; }.language-close { display: grid; place-items: center; width: 36px; height: 36px; border: 0; border-radius: 50%; background: #f1f3f4; color: #3c4043; font-size: 24px; cursor: pointer; transition: background .2s ease, transform .2s ease; }.language-close:hover { background: #e8eaed; transform: rotate(90deg); }.language-search { display: flex; align-items: center; gap: 10px; margin: 0 22px 12px; padding: 0 13px; border: 1px solid #dadce0; border-radius: 10px; color: #5f6368; transition: border-color .2s ease, box-shadow .2s ease; }.language-search:focus-within { border-color: #1a73e8; box-shadow: 0 0 0 2px #d2e3fc; }.language-search span { font-size: 22px; transform: rotate(-15deg); }.language-search input { width: 100%; height: 44px; border: 0; outline: 0; color: #202124; font: 14px var(--font); }.language-list { overflow-y: auto; padding: 4px 10px 14px; }.language-option { width: 100%; display: flex; align-items: center; gap: 14px; padding: 12px; border: 0; border-radius: 12px; background: transparent; color: #202124; text-align: left; cursor: pointer; transition: background .16s ease, transform .16s ease; }.language-option:hover { background: #f1f7fe; }.language-option:active { transform: scale(.985); }.language-option.is-active { background: #e8f0fe; }.language-option__flag { flex: 0 0 auto; font-size: 25px; line-height: 1; }.language-option__text { display: flex; min-width: 0; flex-direction: column; gap: 3px; }.language-option__name { font-size: 15px; font-weight: 500; }.language-option__meta { overflow: hidden; color: #5f6368; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }.language-empty { padding: 20px 14px; color: #5f6368; text-align: center; }
@keyframes language-fade-in { from { opacity: 0; } to { opacity: 1; } } @keyframes language-fade-out { from { opacity: 1; } to { opacity: 0; } } @keyframes language-dialog-in { from { opacity: 0; transform: translateY(-10px) scale(.98); } to { opacity: 1; transform: translateY(0) scale(1); } } @keyframes language-dialog-out { from { opacity: 1; transform: translateY(0) scale(1); } to { opacity: 0; transform: translateY(-8px) scale(.985); } }
@media (max-width: 560px) { .language-backdrop { align-items: end; padding: 0; }.language-dialog { width: 100%; max-height: min(78vh, 680px); border-radius: 22px 22px 0 0; }.language-dialog__head { padding: 20px 18px 12px; }.language-search { margin: 0 18px 10px; }.language-list { padding: 4px 8px 12px; } }
[data-i18n] { overflow-wrap: break-word; }
.test-mode-banner { position:sticky; top:0; z-index:110; display:flex; align-items:center; justify-content:center; gap:10px; flex-wrap:wrap; padding:12px 20px; border-bottom:2px solid #b87900; background:#fff3cd; color:#593900; font:500 14px/1.5 "Google Sans", sans-serif; text-align:center; }
.test-mode-banner strong { flex-shrink:0; font-weight:800; }
.language-flag { width:28px; height:20px; flex:0 0 auto; object-fit:cover; border-radius:3px; box-shadow:0 0 0 1px #0002; }
.language-load-error { padding:0 22px 14px; color:#b3261e; }
.language-option { text-align:start !important; }
.language-trigger__code { direction:ltr; }
.card-header { flex-wrap:wrap; gap:12px; }
[dir="rtl"] .workflow-close { right:auto; left:17px; }
[dir="rtl"] .workflow-title { margin:0 0 30px 46px; }
[dir="rtl"] .workflow-review { padding-left:0; padding-right:61%; }
[dir="rtl"] .pill__input { text-align:start; }
@media (max-width:640px) {
  .test-mode-banner { padding:10px 12px; font-size:12px; }
  .portal-header { display:grid; grid-template-columns:minmax(0,1fr) minmax(84px,36%); direction:ltr; gap:10px; height:auto; min-height:64px; padding:12px; }
  .portal-brand { min-width:0; gap:8px; font-size:14px; line-height:1.35; letter-spacing:0; }
  .portal-brand > span { min-width:0; overflow-wrap:anywhere; }
  .portal-mark { width:60px; height:auto; }
  .portal-header__actions { min-width:0; justify-content:flex-end; }
  .portal-header .how-button { min-width:0; min-height:40px; padding:8px 10px; font-size:12px; line-height:1.35; text-align:start; white-space:normal; }
  .portal-header .how-button > span { min-width:0; overflow-wrap:anywhere; }
  .portal-header .how-button__icon { flex-shrink:0; }
  [dir="rtl"] .portal-brand > span, [dir="rtl"] .portal-header .how-button { direction:rtl; }
  .section-title { flex-wrap:wrap; }
  .button { height:auto; padding-top:10px; padding-bottom:10px; }
  .workflow-backdrop { padding:0; overflow-x:hidden; overscroll-behavior:contain; }
  .workflow-panel { display:grid; grid-template-columns:minmax(0,1fr); align-content:start; gap:14px; width:100%; min-height:100%; padding:72px 16px 28px; }
  .workflow-panel .workflow-title { min-width:0; margin:0 0 8px; font-size:24px; line-height:1.3; overflow-wrap:anywhere; }
  .workflow-step { min-width:0; align-items:flex-start; gap:12px; padding:16px; }
  .workflow-step > div { min-width:0; }
  .workflow-step h3, .workflow-outcome h3 { line-height:1.4; overflow-wrap:anywhere; }
  .workflow-step p, .workflow-outcome p { overflow-wrap:anywhere; }
  .workflow-arrow { height:24px; margin:0 auto; }
  .workflow-panel .workflow-review { margin:0; padding:0; text-align:center; line-height:1.5; overflow-wrap:anywhere; }
  .workflow-outcomes { grid-template-columns:minmax(0,1fr); gap:12px; }
  .workflow-outcome { min-width:0; padding:16px; }
}
