@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Instrument+Serif:ital@0;1&display=swap");*,:after,:before{box-sizing:border-box}body,html{height:100%}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#1A1A1A;background:#FFFFFF;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--portal-actions-top:20px;--portal-actions-end:24px;--portal-action-size:40px;--portal-action-gap:4px;--color-black:#1A1A1A;--color-gray-50:#F9FAFB;--color-gray-100:#F3F4F6;--color-gray-200:#E5E7EB;--color-gray-300:#D1D5DB;--color-gray-400:#9CA3AF;--color-gray-600:#4B5563;--color-gray-700:#374151;--font-sans:"Inter",ui-sans-serif,system-ui,sans-serif;--radius-xl:24px;--radius-full:999px}.page-dots-bg{background-color:#FFFFFF;background-image:radial-gradient(#CBD5E1 .5px,transparent 0);background-size:16px 16px}.btn-secondary{background:transparent;color:var(--color-gray-600);border:1px solid var(--color-gray-200);padding:12px 24px;border-radius:var(--radius-full);font-size:14px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all .2s ease;font-family:var(--font-sans)}.btn-secondary:hover{background:var(--color-gray-50);border-color:var(--color-gray-300);color:var(--color-black)}.onboarding-header-bar{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:14px 28px;pointer-events:none}.onboarding-header-bar>*{pointer-events:auto}.onboarding-header-bar.animated{animation:headerFadeIn .6s ease forwards}@keyframes headerFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.foaster-logo{display:inline-flex;align-items:center;text-decoration:none}.foaster-logo-text{font-family:"Instrument Serif",serif;font-weight:400;color:#0f172a;letter-spacing:-.03em;-webkit-text-stroke:.3px #0f172a;transform:scaleX(.9) scaleY(1.05);transform-origin:left center;display:inline-block;font-size:2rem}.onboarding-step-badge{background:transparent;border:1px solid var(--color-gray-300);border-radius:var(--radius-full);padding:6px 16px;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--color-gray-400);margin-right:80px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn{animation:fadeIn .6s ease-out forwards}.chat-page{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-feature-settings:"cv11","ss03","ss01";background-color:#F8FAFC;color:var(--color-black);height:100vh;display:flex;flex-direction:column;overflow:hidden;position:relative}.chat-scroll-wrapper{flex:1 1;width:100%;overflow-y:auto;overflow-x:hidden}.chat-scroll-wrapper::-webkit-scrollbar{width:3px}.chat-scroll-wrapper::-webkit-scrollbar-track{background:transparent}.chat-scroll-wrapper::-webkit-scrollbar-thumb{background:rgba(0,0,0,.08);border-radius:10px}.chat-container{max-width:780px;margin:0 auto;padding:80px 24px 140px;gap:32px}.chat-container,.chat-message-row{display:flex;flex-direction:column;width:100%}.chat-message-row{animation:fadeIn .5s ease forwards}.chat-message-row.user{align-items:flex-end}.chat-message-row.assistant{align-items:flex-start}.chat-message-label{margin-bottom:6px;font-size:12px;font-weight:500;letter-spacing:-.005em;color:var(--color-gray-400)}.chat-message-bubble{max-width:85%;line-height:1.6;font-size:15px;font-weight:400}.chat-message-row.user .chat-message-bubble{background-color:#F2F2F2;padding:12px 18px;border-radius:var(--radius-xl);color:var(--color-black)}.chat-message-row.assistant .chat-message-bubble{color:var(--color-gray-700);padding:0 8px;background:transparent;max-width:80%}.chat-input-area{position:fixed;bottom:0;left:0;width:100%;padding:20px 24px 32px;background:linear-gradient(0deg,#F8FAFC 85%,rgba(248,250,252,0));display:flex;justify-content:center}.chat-input-wrapper{width:100%;max-width:732px;position:relative;border-radius:16px;background:rgba(255,255,255,.75);backdrop-filter:blur(12px) saturate(140%);-webkit-backdrop-filter:blur(12px) saturate(140%);border:1px solid rgba(15,23,42,.08);box-shadow:0 1px 2px rgba(15,23,42,.04),0 8px 24px -8px rgba(15,23,42,.08);min-height:52px;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.chat-input-wrapper:focus-within{border-color:rgba(15,23,42,.18);box-shadow:0 1px 2px rgba(15,23,42,.06),0 12px 32px -8px rgba(15,23,42,.12);transform:translateY(-1px)}.chat-input-inner{background:transparent;border-radius:16px;padding:8px 10px;display:flex;align-items:flex-end;min-height:52px;width:100%}.chat-input-field{flex:1 1;border:none;outline:none;font-size:15px;padding:8px 12px;color:var(--color-black);background:transparent;font-family:var(--font-sans);font-weight:400;resize:none;line-height:1.5;max-height:180px;overflow-y:auto}.chat-input-field::placeholder{color:var(--color-gray-400);font-weight:300}.chat-icon-btn{width:36px;height:36px;border:none;background:transparent;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-gray-400);transition:background .2s,color .2s}.chat-icon-btn:hover{background-color:var(--color-gray-100);color:var(--color-black)}.chat-send-btn{width:36px;height:36px;margin-left:8px;background:linear-gradient(180deg,#2A2A2A,#0A0A0A);color:#FFFFFF;border-radius:50%;border:1px solid #0a0a0a;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 1px 2px rgba(15,23,42,.12),inset 0 1px 0 rgba(255,255,255,.08);transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.chat-send-btn:hover{background:linear-gradient(180deg,#1A1A1A,#000000);box-shadow:0 6px 16px rgba(15,23,42,.18),inset 0 1px 0 rgba(255,255,255,.12);transform:translateY(-1px)}.chat-send-btn:disabled{background:#E2E8F0;border-color:#E2E8F0;color:var(--color-gray-400);cursor:not-allowed;box-shadow:none;transform:none}.chat-typing-indicator{display:flex;align-items:center;gap:4px;padding:8px;background-color:transparent}.chat-typing-indicator span{display:block;width:8px;height:8px;background-color:#94A3B8;border-radius:50%;animation:chatTypingBounce 1.4s ease-in-out infinite both}.chat-typing-indicator span:first-child{animation-delay:-.32s}@keyframes chatTypingBounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.chat-clone-page{font-family:Inter,sans-serif;background-color:#FFFFFF;background-image:radial-gradient(#CBD5E1 .5px,transparent 0);background-size:16px 16px;color:#1A1A1A;height:100dvh;display:flex;flex-direction:column;overflow:hidden;position:relative}.chat-clone-container{direction:ltr;display:flex;flex-direction:column;max-width:720px;width:100%;margin:0 auto;padding:80px 0 140px;gap:32px}.chat-input-textarea{width:100%;min-height:36px;padding-top:7px;padding-bottom:7px}@media (max-width:768px){.chat-clone-container{padding:16px}}@media (max-width:900px){.chat-clone-page .chat-scroll-wrapper{flex:1 1;min-height:0}.chat-clone-container{padding-bottom:16px!important}}.full-page{min-height:100vh;width:100%}.back-to-hub-btn,.support-btn{position:fixed;top:var(--portal-actions-top);inset-inline-end:var(--portal-actions-end);z-index:9999;display:flex;align-items:center;justify-content:center;width:var(--portal-action-size);height:var(--portal-action-size);background:transparent;border:none;border-radius:10px;color:#81756c;cursor:pointer;padding:0;transition:background .15s ease,color .15s ease}.back-to-hub-btn:hover,.support-btn:hover{background:#f0e9e1;color:#984d36}.back-to-hub-btn:focus-visible,.support-btn:focus-visible{outline:2px solid #9e5139;outline-offset:3px}.lang-toggle{position:fixed;top:26px;inset-inline-end:96px;z-index:9999;display:flex;align-items:center;gap:4px;font-family:Inter,sans-serif}.lang-toggle-btn{background:transparent;border:none;padding:0 2px;font-size:11px;font-weight:500;letter-spacing:.04em;color:#94a3b8;cursor:pointer;transition:color .15s ease}.lang-toggle-btn:hover{color:#475569}.lang-toggle-btn.active{color:#0f172a;font-weight:600}.lang-toggle-sep{font-size:11px;color:#cbd5e1}@media (max-width:768px){.lang-toggle{top:20px;inset-inline-end:16px}}.support-btn{inset-inline-end:calc(var(--portal-actions-end) + var(--portal-action-size) + var(--portal-action-gap))}@media (max-width:768px){:root{--portal-actions-top:16px;--portal-actions-end:14px}.onboarding-header-bar{height:56px;padding:0 16px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid rgba(0,0,0,.05)}.foaster-logo-text{font-size:1.5rem}.onboarding-step-badge{position:absolute;left:50%;margin-right:0;transform:translateX(-50%)}.chat-container{padding:60px 16px 120px}}.chat-icon-btn.recording{background-color:#FCA5A5;color:#DC2626}.audio-waveform-container{overflow:hidden}.audio-waveform-container,.transcription-container{flex:1 1;display:flex;align-items:center;justify-content:center;height:44px}.transcription-container{gap:10px;padding:0 12px}.transcription-text{color:#6B7280;font-size:14px;font-weight:500;animation:transcription-fade 2s ease-in-out infinite}.transcription-dots{display:flex;align-items:center;gap:4px}.transcription-dot{width:8px;height:8px;border-radius:50%;background:#9CA3AF;animation:transcription-bounce 1.4s ease-in-out infinite}.transcription-dot:first-child{animation-delay:0s}.transcription-dot:nth-child(2){animation-delay:.2s}.transcription-dot:nth-child(3){animation-delay:.4s}@keyframes transcription-bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1.2);opacity:1}}@keyframes transcription-fade{0%,to{opacity:.4}50%{opacity:1}}.speech-error{text-align:center;font-size:12px;color:#DC2626;padding:8px;background-color:#FEF2F2;border-radius:8px;margin:8px 24px}.interview-error-screen{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:32px;text-align:center}.interview-error-screen button{padding:10px 20px;border:1px solid #e5e7eb;border-radius:8px;background:white;cursor:pointer}.workflow-status{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:32px;color:#785442;text-align:center}.workflow-status[role=status]{font-size:16px;font-weight:400;line-height:1.5}.hub-content .workflow-status{min-height:60vh}.chat-page>.workflow-status{min-height:100dvh;padding:80px 24px}.workflow-status [role=alert]{color:#991B1B}.workflow-retry{background:#1A1A1A;color:#FFFFFF;border:0;border-radius:10px;padding:10px 24px;font:inherit;cursor:pointer}.loading-spinner{animation:loadingSpin 1s linear infinite}@keyframes loadingSpin{to{transform:rotate(1turn)}}