:root{--tc-orange:#f97316;--tc-orange-2:#fb923c;--tc-bg-0:#0a0a0c;--tc-bg-1:#121215;--tc-glass:hsla(0,0%,100%,.05);--tc-glass-2:hsla(0,0%,100%,.08);--tc-border:hsla(0,0%,100%,.1);--tc-text:#f4f4f5;--tc-muted:#a1a1aa;--tc-faint:#71717a;--tc-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}body.chat-mode{overflow:hidden}body.chat-mode .tc-marketing{display:none}.tc-root{font-family:var(--tc-font);color:var(--tc-text);-webkit-font-smoothing:antialiased}.tc-brand{display:flex;align-items:center;gap:.55rem}.tc-brand-dot{width:.85rem;height:.85rem;border-radius:50%;background:linear-gradient(135deg,var(--tc-orange),var(--tc-orange-2));box-shadow:0 0 16px rgba(249,115,22,.7)}.tc-brand-name{font-weight:800;letter-spacing:-.02em;font-size:1.15rem;color:#fff}.tc-landing{position:relative;min-height:100vh;background:radial-gradient(1200px 600px at 20% -10%,rgba(249,115,22,.16),transparent 60%),radial-gradient(900px 500px at 100% 100%,rgba(249,115,22,.08),transparent 60%),linear-gradient(180deg,var(--tc-bg-0),var(--tc-bg-1));overflow:hidden}.tc-aurora{position:absolute;inset:-20% -10% auto -10%;height:60%;background:radial-gradient(closest-side,rgba(249,115,22,.22),transparent);filter:blur(60px);animation:tcFloat 12s ease-in-out infinite;pointer-events:none}.tc-landing-inner{position:relative;z-index:1;max-width:1100px;margin:0 auto;padding:5rem 1.5rem;display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center}.tc-hero-title{margin:1.5rem 0 1rem;font-size:clamp(2.4rem,5vw,3.6rem);line-height:1.05;font-weight:800;letter-spacing:-.03em;color:#fff}.tc-accent{background:linear-gradient(120deg,var(--tc-orange),var(--tc-orange-2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.tc-hero-sub{color:var(--tc-muted);font-size:1.05rem;line-height:1.6;max-width:30rem}.tc-points{list-style:none;padding:0;margin:1.75rem 0 0;display:flex;flex-direction:column;gap:.75rem}.tc-points li{display:flex;align-items:center;gap:.65rem;color:var(--tc-text);font-size:.95rem}.tc-points li span{font-size:1.05rem}.tc-login-card{background:rgba(18,18,21,.7);border:1px solid var(--tc-border);border-radius:28px;padding:2rem;backdrop-filter:blur(20px);box-shadow:0 30px 80px rgba(0,0,0,.55)}.tc-login-form{display:flex;flex-direction:column;gap:.75rem}.tc-card-title{font-size:1.5rem;font-weight:800;color:#fff;letter-spacing:-.02em}.tc-card-sub{color:var(--tc-muted);font-size:.9rem;margin-top:-.35rem;margin-bottom:.5rem}.tc-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--tc-faint);font-weight:700;margin-top:.35rem}.tc-row{display:flex;gap:.5rem}.tc-row-actions{margin-top:.5rem}.tc-input,.tc-select{width:100%;background:var(--tc-glass);border:1px solid var(--tc-border);border-radius:14px;padding:.8rem .9rem;color:var(--tc-text);font-size:.95rem;outline:none;transition:border-color .15s,box-shadow .15s}.tc-select{-webkit-appearance:none;-moz-appearance:none;appearance:none}.tc-cc{width:auto;min-width:5.25rem;max-width:6rem;flex-shrink:0;padding-right:1.6rem}.tc-input::-moz-placeholder{color:var(--tc-faint)}.tc-input::placeholder{color:var(--tc-faint)}.tc-input:focus,.tc-select:focus{border-color:var(--tc-orange);box-shadow:0 0 0 3px rgba(249,115,22,.25)}.tc-error{color:#fca5a5}.tc-error,.tc-notice{font-size:.82rem;font-weight:600}.tc-notice{color:#7ee0a8}.tc-auth-switch{text-align:center;color:var(--tc-faint);font-size:.85rem;margin:.25rem 0 0}.tc-link-btn{background:none;border:none;padding:0;color:var(--tc-orange);font-weight:700;font-size:.85rem;cursor:pointer}.tc-link-btn:hover{text-decoration:underline}.tc-tabs{display:flex;gap:.4rem;background:var(--tc-glass);border:1px solid var(--tc-border);border-radius:14px;padding:.25rem}.tc-tab{flex:1;background:none;border:none;border-radius:11px;padding:.55rem .5rem;color:var(--tc-faint);font-size:.88rem;font-weight:700;cursor:pointer;transition:background .15s,color .15s}.tc-tab.is-active{background:linear-gradient(120deg,var(--tc-orange),var(--tc-orange-2));color:#1a0e02}.tc-code-row{align-items:stretch}.tc-code-input{flex:1 1 auto;width:auto;min-width:0}.tc-code-row .tc-send-code{width:auto;flex:0 0 auto;flex-shrink:0;white-space:nowrap;padding:.7rem 1rem;font-size:.82rem;min-width:6.5rem}.tc-send-code:disabled{opacity:.55;cursor:not-allowed}.tc-turnstile{margin:.7rem 0 .1rem;min-height:65px;display:flex;justify-content:center}.tc-btn{border:none;border-radius:999px;padding:.85rem 1.2rem;font-size:.95rem;font-weight:700;cursor:pointer;transition:transform .12s ease,background .15s,opacity .15s;width:100%}.tc-btn:active{transform:scale(.98)}.tc-btn-primary{background:linear-gradient(120deg,var(--tc-orange),var(--tc-orange-2));color:#1a0e02;box-shadow:0 12px 30px rgba(249,115,22,.4)}.tc-btn-primary:hover{transform:translateY(-1px)}.tc-btn-primary:disabled{opacity:.55;cursor:not-allowed;transform:none}.tc-btn-ghost{background:var(--tc-glass);color:#fff;border:1px solid var(--tc-border)}.tc-btn-ghost:hover{background:var(--tc-glass-2)}.tc-divider{position:relative;text-align:center;margin:.5rem 0}.tc-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--tc-border)}.tc-divider span{position:relative;background:rgba(18,18,21,.9);padding:0 .75rem;color:var(--tc-faint);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.tc-gender-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.tc-gender-pill{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.85rem;border-radius:14px;border:1px solid var(--tc-border);background:var(--tc-glass);color:var(--tc-muted);font-weight:700;font-size:.95rem;cursor:pointer;transition:all .15s}.tc-gender-pill:hover{background:var(--tc-glass-2)}.tc-gender-pill.is-active{background:linear-gradient(120deg,var(--tc-orange),var(--tc-orange-2));color:#1a0e02;border-color:transparent;box-shadow:0 10px 24px rgba(249,115,22,.35)}.tc-gender-glyph{font-size:1.1rem}.tc-overlay{position:fixed;top:var(--tc-vvt,0);left:0;right:0;height:var(--tc-vvh,100dvh);z-index:50;display:flex;flex-direction:column;background:radial-gradient(900px 500px at 50% -10%,rgba(249,115,22,.12),transparent 60%),linear-gradient(180deg,var(--tc-bg-0),var(--tc-bg-1));overflow:hidden}.tc-overlay.tc-overlay-inline{position:relative;inset:auto;top:auto;height:auto;z-index:1;overflow:visible;min-height:70vh}.tc-overlay-glow{position:absolute;top:-30%;left:50%;transform:translateX(-50%);width:70%;height:50%;background:radial-gradient(closest-side,rgba(249,115,22,.18),transparent);filter:blur(70px);pointer-events:none}.tc-topbar{position:relative;z-index:1;flex-shrink:0;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;border-bottom:1px solid var(--tc-border);background:rgba(10,10,12,.6);backdrop-filter:blur(14px)}.tc-partner,.tc-topbar{display:flex;align-items:center}.tc-partner{gap:.7rem;min-width:0}.tc-avatar{width:2.6rem;height:2.6rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.3rem;color:#fff;background:linear-gradient(135deg,#3f3f46,#27272a);border:1px solid var(--tc-border);flex-shrink:0}.tc-avatar[data-gender=female]{background:linear-gradient(135deg,#db2777,#9d174d)}.tc-avatar[data-gender=male]{background:linear-gradient(135deg,#2563eb,#1e3a8a)}.tc-partner-meta{min-width:0}.tc-partner-line{display:flex;align-items:center;gap:.4rem}.tc-partner-name{font-weight:700;color:#fff;font-size:.98rem}.tc-partner-chip{font-size:.72rem;padding:.1rem .45rem;border-radius:999px;background:var(--tc-glass-2);color:var(--tc-muted);font-weight:600}.tc-partner-loc{font-size:.78rem;color:var(--tc-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tc-topbar-right{gap:.6rem;flex-shrink:0}.tc-status,.tc-topbar-right{display:flex;align-items:center}.tc-status{gap:.4rem;font-size:.78rem;font-weight:700;padding:.35rem .7rem;border-radius:999px;background:var(--tc-glass);color:var(--tc-muted)}.tc-status-dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--tc-faint)}.tc-status-paired{color:#6ee7b7;background:rgba(16,185,129,.12)}.tc-status-paired .tc-status-dot{background:#34d399;box-shadow:0 0 10px #34d399;animation:tcPulse 1.6s ease-in-out infinite}.tc-status-connecting,.tc-status-pairing{color:var(--tc-orange-2);background:rgba(249,115,22,.12)}.tc-status-connecting .tc-status-dot,.tc-status-pairing .tc-status-dot{background:var(--tc-orange);animation:tcPulse 1s ease-in-out infinite}.tc-status-ended .tc-status-dot{background:#a1a1aa}.tc-next-btn{border:1px solid var(--tc-border);background:var(--tc-glass);color:#fff;font-weight:700;font-size:.82rem;padding:.4rem .8rem;border-radius:999px;cursor:pointer;transition:background .15s}.tc-next-btn:hover{background:var(--tc-glass-2)}.tc-logout-btn{border:1px solid var(--tc-border);background:transparent;color:var(--tc-muted);font-weight:600;font-size:.82rem;padding:.4rem .8rem;border-radius:999px;cursor:pointer;transition:background .15s,color .15s}.tc-logout-btn:hover{background:var(--tc-glass);color:#fff}.tc-body{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column}.tc-idle{flex:1;display:flex;align-items:center;justify-content:center;padding:1.5rem}.tc-idle-card{width:100%;max-width:26rem;background:rgba(18,18,21,.7);border:1px solid var(--tc-border);border-radius:24px;padding:1.75rem;backdrop-filter:blur(20px);box-shadow:0 24px 60px rgba(0,0,0,.5);display:flex;flex-direction:column;gap:.75rem;animation:tcRise .4s ease}.tc-idle-badge{align-self:flex-start;font-size:.74rem;font-weight:700;padding:.25rem .7rem;border-radius:999px;background:var(--tc-glass-2);color:var(--tc-muted)}.tc-idle-title{font-size:1.4rem;font-weight:800;color:#fff;letter-spacing:-.02em;margin:.25rem 0}.tc-start-btn{margin-top:.75rem;padding:1rem;font-size:1.05rem}.tc-matching{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;text-align:center}.tc-radar{position:relative;width:7rem;height:7rem;margin-bottom:.5rem}.tc-radar-ring{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(249,115,22,.5);animation:tcRadar 2s ease-out infinite}.tc-radar-ring-2{animation-delay:.6s}.tc-radar-ring-3{animation-delay:1.2s}.tc-radar-core{position:absolute;inset:38%;border-radius:50%;background:linear-gradient(135deg,var(--tc-orange),var(--tc-orange-2));box-shadow:0 0 24px rgba(249,115,22,.8);animation:tcPulse 1.4s ease-in-out infinite}.tc-matching-title{font-size:1.4rem;font-weight:800;color:#fff;letter-spacing:-.02em}.tc-matching-sub{color:var(--tc-muted);font-size:.95rem;max-width:22rem}.tc-matching-timer{font-variant-numeric:tabular-nums;font-size:.85rem;color:var(--tc-faint);font-weight:700}.tc-matching .tc-btn{width:auto;padding:.7rem 2rem;margin-top:.5rem}.tc-conv,.tc-messages{flex:1;min-height:0;display:flex;flex-direction:column}.tc-messages{overflow-y:auto;padding:1.25rem 1rem;justify-content:flex-end;gap:.6rem;max-width:48rem;width:100%;margin:0 auto;-webkit-overflow-scrolling:touch}.tc-messages-faded{opacity:.55;flex:0 1 auto;max-height:40%}.tc-empty-hint{margin:auto;color:var(--tc-faint);font-size:.9rem}.tc-sys{align-self:center;margin:.2rem 0}.tc-sys span{display:inline-block;background:var(--tc-glass);color:var(--tc-muted);font-size:.74rem;padding:.3rem .85rem;border-radius:999px}.tc-bubble-row{display:flex;animation:tcBubbleIn .25s ease}.tc-bubble-row.is-mine{justify-content:flex-end}.tc-bubble-row.is-theirs{justify-content:flex-start}.tc-bubble-row.is-grouped{margin-top:-.45rem}.tc-bubble{max-width:75%;min-width:0;padding:.7rem .95rem;border-radius:20px;box-shadow:0 6px 18px rgba(0,0,0,.3)}.tc-bubble-row.is-grouped.is-mine .tc-bubble{border-top-right-radius:8px}.tc-bubble-row.is-grouped.is-theirs .tc-bubble{border-top-left-radius:8px}.tc-bubble-mine{background:linear-gradient(120deg,var(--tc-orange),var(--tc-orange-2));color:#1a0e02;border-bottom-right-radius:6px}.tc-bubble-theirs{background:#1f1f23;color:var(--tc-text);border:1px solid var(--tc-border);border-bottom-left-radius:6px}.tc-bubble-text{font-size:.95rem;line-height:1.4;word-break:break-word;overflow-wrap:anywhere;white-space:pre-wrap}.tc-bubble-meta{display:flex;align-items:center;gap:.45rem;margin-top:.3rem;font-size:.65rem;opacity:.7}.tc-bubble-mine .tc-bubble-meta{justify-content:flex-end;color:rgba(26,14,2,.7)}.tc-bubble-theirs .tc-bubble-meta{color:var(--tc-faint)}.tc-tick{font-weight:700;text-transform:uppercase;letter-spacing:.04em}.tc-tick.is-sending{opacity:.65;font-style:italic;text-transform:none}.tc-tick.is-read{color:#1a0e02;opacity:1}.tc-partner.is-gone{opacity:.55;filter:grayscale(.4)}.tc-partner.is-gone .tc-avatar{background:linear-gradient(135deg,#3f3f46,#27272a)}.tc-typing{display:flex;align-items:center;gap:.25rem;background:#1f1f23;border:1px solid var(--tc-border);border-radius:20px;border-bottom-left-radius:6px;padding:.75rem .95rem}.tc-typing span{width:.45rem;height:.45rem;border-radius:50%;background:var(--tc-faint);animation:tcTyping 1.2s ease-in-out infinite}.tc-typing span:nth-child(2){animation-delay:.2s}.tc-typing span:nth-child(3){animation-delay:.4s}.tc-composer{flex-shrink:0;display:flex;align-items:flex-end;gap:.5rem;padding:.75rem 1rem max(.75rem,env(safe-area-inset-bottom));border-top:1px solid var(--tc-border);background:rgba(10,10,12,.75);backdrop-filter:blur(14px);max-width:48rem;width:100%;margin:0 auto}.tc-textarea{flex:1;min-width:0;resize:none;background:var(--tc-glass);border:1px solid var(--tc-border);border-radius:18px;padding:.7rem .95rem;color:var(--tc-text);font-size:1rem;line-height:1.35;max-height:6rem;outline:none;font-family:var(--tc-font);transition:border-color .15s,box-shadow .15s}.tc-textarea::-moz-placeholder{color:var(--tc-faint)}.tc-textarea::placeholder{color:var(--tc-faint)}.tc-textarea:focus{border-color:var(--tc-orange);box-shadow:0 0 0 3px rgba(249,115,22,.22)}.tc-send{flex-shrink:0;width:2.85rem;height:2.85rem;border-radius:50%;border:none;background:linear-gradient(120deg,var(--tc-orange),var(--tc-orange-2));color:#1a0e02;font-size:1.15rem;cursor:pointer;box-shadow:0 10px 24px rgba(249,115,22,.4);transition:transform .12s}.tc-send:hover{transform:translateY(-1px)}.tc-send:active{transform:scale(.94)}.tc-leave{flex-shrink:0;background:transparent;border:none;color:var(--tc-faint);font-size:.82rem;font-weight:700;cursor:pointer;padding:.4rem .2rem}.tc-leave:hover{color:var(--tc-text)}.tc-conv-ended{justify-content:flex-end}.tc-ended-panel{flex-shrink:0;text-align:center;padding:1.5rem 1.25rem max(2rem,env(safe-area-inset-bottom));border-top:1px solid var(--tc-border);background:rgba(10,10,12,.7);backdrop-filter:blur(14px);display:flex;flex-direction:column;align-items:center;gap:.5rem;animation:tcRise .35s ease}.tc-ended-icon{font-size:2.5rem}.tc-ended-title{font-size:1.35rem;font-weight:800;color:#fff;letter-spacing:-.02em}.tc-ended-panel .tc-btn{max-width:22rem;margin-top:.5rem}@keyframes tcPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.18);opacity:.75}}@keyframes tcRadar{0%{transform:scale(.45);opacity:.9}to{transform:scale(1);opacity:0}}@keyframes tcTyping{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-.3rem);opacity:1}}@keyframes tcBubbleIn{0%{transform:translateY(.5rem);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes tcRise{0%{transform:translateY(1rem);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes tcFloat{0%,to{transform:translateY(0) translateX(0)}50%{transform:translateY(2rem) translateX(1rem)}}@media (max-width:860px){.tc-landing-inner{grid-template-columns:minmax(0,1fr);padding:3rem 1.25rem;gap:2rem}.tc-landing-copy,.tc-login-card{min-width:0}.tc-login-card{order:-1}.tc-landing-copy{order:0}}@media (max-width:480px){.tc-bubble{max-width:82%}.tc-cc{min-width:5rem;max-width:5.75rem}.tc-topbar{padding:.7rem .85rem}.tc-hero-title{font-size:2.2rem}}@media (max-width:360px){.tc-bubble{max-width:88%}.tc-row{flex-direction:column}.tc-code-row{flex-direction:row}.tc-cc{max-width:none}}