/* Native integration and recovery states; visual primitives come from generated tokens. */
/* Shared appearance control beside the existing account action. */
.funnel-landing .landing-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.funnel-landing .landing-appearance-slot{display:inline-flex;width:44px;height:44px;flex-shrink:0}
.funnel-landing .appearance-toggle{width:44px;min-height:44px;padding:10px;background:transparent;color:var(--text-primary);border:1px solid var(--control-border);box-shadow:none}
.funnel-landing .appearance-toggle:hover{background:var(--nav-hover)}
.funnel-landing img.landing-logo-dark{display:none}
:root[data-theme=dark] .funnel-landing img.landing-logo-light{display:none}
:root[data-theme=dark] .funnel-landing img.landing-logo-dark{display:block}
@media(max-width:1050px){.funnel-landing .header-inner{height:auto;min-height:92px;flex-wrap:wrap;gap:12px;padding-top:12px}.funnel-landing .header-inner nav{order:3;width:100%;justify-content:center;flex-wrap:wrap;column-gap:24px;row-gap:0;border-top:1px solid var(--border-subtle)}}
@media(max-width:600px){.funnel-landing .site-header .logo img{width:120px;height:40px}.funnel-landing .header-inner nav{column-gap:16px}.funnel-landing .landing-header-actions .text-button{gap:0;white-space:nowrap}.funnel-landing .landing-header-actions .text-button svg{display:none}}
.funnel-v3,.funnel-landing{min-height:100vh;background:var(--bg-canvas);color:var(--text-primary)}
.funnel-v3 .logo,.funnel-landing .logo{background:none;width:auto;height:auto;padding:0}
.funnel-v3 .auth-header{border:0;background:var(--bg-canvas)}
.funnel-v3 fieldset{border:0;padding:0;margin:0;min-width:0}
.funnel-v3 input:not([type=checkbox]):not([type=radio]):not([type=file]),.funnel-v3 select,.funnel-v3 textarea{box-shadow:none;width:100%;font:16px/1.6 var(--font-sans);color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--control-border);border-radius:var(--radius-control);padding:12px 14px;min-height:50px}
.funnel-v3 label{font-family:var(--font-sans)}
.funnel-v3 textarea{resize:vertical}.funnel-v3 button{font-family:var(--font-sans)}
.funnel-v3 .text-action,.funnel-v3 .skip-question{background:none;color:var(--action-link);box-shadow:none;border:0;font-size:13px;min-height:44px;padding:8px 0}
.funnel-v3 .save-status:empty{display:none}.funnel-v3 .save-status,.funnel-v3 .recovery-panel{font-size:13px;margin:18px 0;line-height:1.7}.funnel-v3 .recovery-panel{padding:18px;border:1px solid var(--border-default);border-radius:var(--radius-control)}
.funnel-v3 .recovery-panel button{margin:8px 12px 0 0;padding:10px;background:var(--bg-muted);border-radius:var(--radius-control)}
.funnel-v3 .error{color:var(--text-error);font-size:13px;margin:14px 0}
.funnel-v3 .question-main{max-width:640px;width:calc(100% - 48px);margin:44px auto 64px;padding:0}
.funnel-v3 .question-main h1{font-size:42px;margin:0 0 18px}.funnel-v3 .question-hint{font-size:15px;line-height:1.8;color:var(--text-secondary);margin-bottom:26px}
.funnel-v3 .question-main form{margin-top:26px}.funnel-v3 .question-main label{display:block;font-size:13px;font-weight:600;margin-bottom:9px}.funnel-v3 .question-main .form-field{margin-bottom:24px}
.funnel-v3 .question-main #answer{min-height:240px;padding:20px;line-height:1.8}.funnel-v3 .question-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:22px}
.funnel-v3 .question-progress{height:4px;background:var(--bg-muted);border-radius:var(--radius-chip);overflow:hidden;margin-bottom:38px}.funnel-v3 .question-progress>span{display:block;height:100%;background:var(--action-primary)}
.funnel-v3 .phase-1>span{width:25%}.funnel-v3 .phase-2>span{width:50%}.funnel-v3 .phase-3>span{width:75%}.funnel-v3 .phase-4>span{width:100%}
.funnel-v3 .example{font-size:13px;color:var(--text-secondary);margin-top:12px}.funnel-v3 .example summary{min-height:44px;align-content:center;color:var(--action-link);cursor:pointer}.funnel-v3 .example p{padding:12px 0;line-height:1.8}
.funnel-v3 .route-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.funnel-v3 .route-options label,.funnel-v3 .status-options label{display:flex;align-items:center;gap:10px;font-weight:400}.funnel-v3 .route-options input,.funnel-v3 .status-options input{width:18px;height:18px;margin:0;accent-color:var(--action-primary)}
.funnel-v3 .input-row{padding:22px 0;border-top:1px solid var(--border-subtle)}.funnel-v3 .input-row header{display:flex;align-items:center;justify-content:space-between;gap:16px}.funnel-v3 .input-row h2{font:600 14px/1.6 var(--font-sans);letter-spacing:normal}.funnel-v3 .answer-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.85;color:var(--text-secondary)}
.funnel-v3 .review-actions{margin-top:24px}.funnel-v3 .review-actions .primary{width:100%}.funnel-v3 .role-context{margin:28px 0}.funnel-v3 .role-context label{margin-top:18px}
.funnel-v3 .welcome-heading h1{margin-top:0}.funnel-v3 .cv-import .dropzone label{margin:0}.funnel-v3 .cv-import .selected-file{margin:14px 0}.funnel-v3 .cv-import .text-button{background:none;color:var(--action-link);border:0;box-shadow:none;padding:12px 0;min-height:44px}.funnel-v3 .cv-import #cv-file{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.funnel-v3 .busy-main{max-width:640px;width:calc(100% - 48px);margin:80px auto}.funnel-v3 .sr-page{max-width:1120px;width:calc(100% - 48px);margin:24px auto 70px}
@media(max-width:760px){.funnel-v3 .question-main{margin-top:24px}.funnel-v3 .question-main h1{font-size:36px}}
@media(max-width:480px){.funnel-v3 .question-main,.funnel-v3 .sr-page{width:calc(100% - 32px)}.funnel-v3 .question-main h1{font-size:34px}.funnel-v3 .route-options{grid-template-columns:1fr}.funnel-v3 .question-actions .primary{min-width:148px}}
.funnel-v3 .signup-story-wrap{display:contents}.funnel-v3 .auth-story{height:100%}.funnel-v3 .role-preview{width:100%}
.funnel-v3.snapshot-composition{min-height:0}.funnel-v3 .pro-example-wrap{display:contents}.funnel-v3 .select-wrap .select-chevron{position:absolute;right:16px;top:12px;pointer-events:none}.funnel-v3 .auth-card .auth-story h2{color:var(--brand-hero-text)}
/* Isolate approved funnel composition from legacy global element rules. */
.funnel-v3 .welcome-heading{display:block}.funnel-v3 .eyebrow{margin:0}.funnel-v3 .auth-story .eyebrow,.funnel-v3 .role-story .eyebrow,.funnel-v3 .next-move .eyebrow{color:var(--brand-hero-text)}
.funnel-v3 .field{margin-top:0}.funnel-v3 input:not([type=checkbox]):not([type=radio]),.funnel-v3 textarea,.funnel-v3 select{margin-top:0}
.funnel-v3 .example{padding-left:0;border-left:0}.funnel-v3 .example-header{justify-content:flex-start}.funnel-v3 .next-move{border-left:0;margin:0;padding:24px}.funnel-v3 .next-move:before{display:none}
.funnel-v3 .paste-toggle,.funnel-v3 .paste-toggle:hover:not(:disabled),.funnel-v3 .text-action:hover:not(:disabled),.funnel-v3 .text-button:hover:not(:disabled){box-shadow:var(--shadow-none);background:none}
.funnel-v3 .question-actions .primary{margin-left:0}.funnel-v3 .answer-text{white-space:pre-line}
.funnel-landing .section-heading{display:block}.funnel-landing .eyebrow{margin-top:0}.funnel-landing .next-move{border-left:0;margin-top:0}.funnel-landing .next-move:before{display:none}.funnel-landing .next-move .eyebrow{color:var(--brand-hero-text)}
.funnel-landing .faq summary{color:var(--text-primary)}
/* Segmented progress: one segment per onboarding screen. */
.funnel-v3 .question-progress-steps{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px;margin-bottom:38px}
.funnel-v3 .question-progress-steps>span{height:4px;border-radius:var(--radius-chip);background:var(--bg-muted)}
.funnel-v3 .question-progress-steps>span.is-done{background:var(--action-primary)}
@media(max-width:760px){.funnel-v3 .question-progress-steps{margin-bottom:30px}}

/* Google identity branding: official color G and Google Sans. */
@font-face{font-family:"Google Sans";src:url("/fonts/google-sans-medium.ttf") format("truetype");font-style:normal;font-weight:500;font-display:swap}
.funnel-v3 .google-sign-in{display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:12px;background:#fff;color:#1f1f1f;border:1px solid #747775;font:500 14px/20px "Google Sans",sans-serif}
.funnel-v3 .google-sign-in img{width:20px;height:20px;flex:0 0 20px;object-fit:contain}
[data-theme=dark] .funnel-v3 .google-sign-in{background:#131314;color:#e3e3e3;border-color:#8e918f}

