/* Phase C: auth and environment only. Existing trip/expense content is unchanged. */
#environment{min-height:100vh;background:var(--app-bg)}
.tt-auth-environment{width:min(var(--shell-max),100%);margin:auto;min-height:100vh}
.tt-auth-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;background:transparent;border:0;color:var(--text-primary);padding:var(--space-5)}
.tt-language{display:flex;align-items:center;gap:var(--space-2);flex:none}
.tt-language label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.tt-language select{width:120px;min-height:var(--control-size);margin:0;font-size:var(--font-secondary);border-radius:var(--radius-pill);background:var(--surface-glass-strong);padding:var(--space-2) var(--space-3)}
.tt-auth-main{width:auto;max-width:none;margin:0;padding:var(--space-7) var(--space-5);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:var(--space-7);align-items:center;min-height:calc(100vh - 100px)}
.tt-auth-intro{padding:var(--space-5);min-width:0}
.tt-auth-display{font-size:clamp(2.25rem,4.5vw,3.5rem);line-height:1.12;letter-spacing:-.035em;max-width:15ch;text-wrap:balance;margin:var(--space-4) 0 var(--space-5)}
.tt-auth-lead{font-size:var(--font-card);color:var(--text-secondary);max-width:32ch}
.tt-auth-intro>.tt-secondary{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-6)}
.tt-travel-art{display:flex;align-items:center;max-width:360px;margin:var(--space-7) 0}
.tt-travel-stop{display:flex;align-items:center;justify-content:center;width:60px;height:60px;flex:none;background:var(--surface-glass);border:1px solid var(--border-glass);border-radius:var(--radius-card);box-shadow:var(--shadow-soft);color:var(--accent-secondary);transform:rotate(-8deg)}
.tt-travel-stop--peak{width:88px;height:88px;transform:rotate(6deg);color:var(--accent-primary)}
.tt-travel-stop--peak .tt-icon{width:36px;height:36px}
.tt-travel-line{flex:1;border-top:2px dashed var(--border-control);min-width:var(--space-4)}
.tt-auth-main>#app{width:100%;max-width:460px;justify-self:center;min-width:0}
.tt-auth-main .tt-panel{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6);margin:0}
.tt-auth-card-heading p{margin:var(--space-2) 0 0}
.tt-auth-card-heading .tt-eyebrow{margin:0 0 var(--space-3)}
.tt-auth-main #google{width:100%}
.tt-provider-mark{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;width:24px;height:24px;background:var(--accent-on);color:var(--accent-secondary);font-weight:var(--weight-strong)}
.tt-auth-divider{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-caption);color:var(--text-muted)}
.tt-auth-divider::before,.tt-auth-divider::after{content:"";flex:1;height:1px;background:var(--border-control)}
.tt-auth-form{display:flex;flex-direction:column;gap:var(--space-4)}
.tt-auth-field{display:block;margin:0;font-size:var(--font-body)}
.tt-auth-field .tt-label{margin-bottom:var(--space-2)}
.tt-auth-links{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:space-between}
.tt-auth-links .tt-button{border:0;background:transparent;padding:var(--space-2) 0;font-size:var(--font-secondary);min-width:var(--control-size);text-decoration:underline;text-underline-offset:3px}
.tt-auth-feedback:empty{display:none}
.tt-auth-feedback #status{margin:0;font-size:var(--font-caption);color:var(--text-secondary)}
.tt-auth-feedback #error{font-size:var(--font-secondary);border-radius:var(--radius-control);margin:var(--space-2) 0 0}
.tt-auth-main .tt-panel[aria-busy="true"]{cursor:progress}
.tt-real-shell .tt-main{min-width:0;width:auto;max-width:none}
.tt-real-shell #app{min-width:0}
.tt-real-shell .tt-shell-header{gap:var(--space-4)}
.tt-real-shell .tt-header-tools{flex-wrap:wrap;justify-content:flex-end;min-width:0}
.tt-shell-identity{display:flex;align-items:center;gap:var(--space-2);min-width:0;max-width:240px}
.tt-shell-name{font-size:var(--font-secondary);font-weight:var(--weight-medium);overflow-wrap:anywhere;min-width:0}
.tt-shell-release{font-size:var(--font-caption);color:var(--text-muted);margin:var(--space-6) 0 0}
.tt-real-shell .tt-navigation .tt-nav-link--primary{border-radius:var(--radius-pill)}
.tt-real-shell .tt-nav-link--primary .tt-icon{width:28px;height:28px}
.tt-real-shell .tt-nav-link--primary[aria-current]{background:var(--accent-highlight);color:var(--accent-on);outline:2px solid var(--accent-primary);outline-offset:3px}
.tt-account-identity{display:flex;align-items:center;gap:var(--space-4);margin-block:var(--space-5);overflow-wrap:anywhere;min-width:0}
.tt-account-identity>div{min-width:0}.tt-account-identity p{margin:var(--space-1) 0}
@media(max-width:1023px){.tt-auth-main{gap:var(--space-5);padding-block:var(--space-6)}.tt-auth-intro{padding:0}.tt-auth-main .tt-panel{padding:var(--space-5)}.tt-real-shell .tt-nav-link--primary{margin-top:calc(-1 * var(--space-4));border:3px solid var(--surface-elevated);box-shadow:var(--shadow-soft)}.tt-real-shell .tt-nav-link--primary:hover{background:var(--accent-highlight);color:var(--accent-on)}}
@media(max-width:639px){.tt-auth-header{padding:var(--space-4);gap:var(--space-2)}.tt-auth-header .tt-brand{font-size:var(--font-body)}.tt-language select{width:112px}.tt-auth-main{grid-template-columns:1fr;gap:var(--space-5);min-height:0;padding:var(--space-4) var(--space-4) max(var(--space-6),env(safe-area-inset-bottom))}.tt-auth-intro{padding:0 var(--space-2)}.tt-auth-display{font-size:var(--font-display);max-width:20ch;margin:var(--space-2) 0 var(--space-3)}.tt-auth-lead{font-size:var(--font-secondary);max-width:36ch;margin:0}.tt-travel-art{display:none}.tt-auth-intro>.tt-secondary{display:none}.tt-auth-main .tt-panel{padding:var(--space-5);gap:var(--space-3)}.tt-auth-main #app{max-width:460px}.tt-real-shell .tt-shell-header{padding:var(--space-4);gap:var(--space-3)}.tt-real-shell .tt-header-tools{gap:var(--space-2);width:100%;justify-content:space-between}.tt-shell-identity{max-width:calc(100% - 176px)}#shell-signout{padding:var(--space-2)}#shell-signout>[data-i18n]{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.tt-real-shell .tt-main{padding-top:var(--space-3)}}
