:root{color:#17191f;font-synthesis:none;text-rendering:optimizelegibility;--accent:#635bff;--accent-dark:#5048e5;--muted:#727784;--line:#e7e8ee;background:#f7f8fb;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #635bff38}.app{flex-direction:column;min-height:100vh;display:flex}.page-content{flex:1}footer{color:#8a8e99;text-align:center;padding:24px 16px 30px;font-size:12px;line-height:1.5}footer p{margin:2px 0}.home-shell{place-items:center;min-height:calc(100vh - 100px);padding:48px 20px;display:grid}.hero-card,.pairing-card{text-align:center;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffdb;border:1px solid #e2e4ebd9;border-radius:28px;width:min(100%,470px);padding:52px 54px;box-shadow:0 24px 70px #23273a14}.brand-mark{color:#fff;background:linear-gradient(145deg,#756eff,#5149df);border-radius:17px;place-items:center;width:54px;height:54px;margin:0 auto 20px;font-size:25px;font-weight:800;display:grid;box-shadow:0 12px 24px #635bff40}.brand-mark.small{border-radius:14px;width:44px;height:44px;font-size:20px}.brand-mark.tiny{width:30px;height:30px;box-shadow:none;border-radius:9px;margin:0;font-size:15px}h1,h2,p{margin-top:0}.hero-card h1{letter-spacing:-.04em;margin-bottom:9px;font-size:38px}.tagline{color:var(--muted);margin-bottom:34px;font-size:17px}.primary-button,.secondary-button,.small-button{cursor:pointer;border:0;border-radius:13px;justify-content:center;align-items:center;font-weight:650;text-decoration:none;transition:transform .15s,background .15s,box-shadow .15s;display:inline-flex}.primary-button{color:#fff;background:var(--accent);min-height:50px;padding:0 24px;box-shadow:0 10px 22px #635bff33}.primary-button:hover:not(:disabled){background:var(--accent-dark);transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled{opacity:.48;cursor:not-allowed}.create-button{width:100%}.primary-button.compact{border-radius:11px;min-height:42px;padding:0 20px}.secondary-button{height:48px;color:var(--accent);background:#efedff;padding:0 22px}.small-button{color:#4e47d5;background:#eeecff;min-height:34px;padding:0 12px;font-size:12px}.or{color:#a2a5ae;align-items:center;gap:14px;margin:24px 0;font-size:13px;display:flex}.or:before,.or:after{content:"";background:var(--line);flex:1;height:1px}.join-form{grid-template-columns:1fr auto;gap:11px;display:grid}.join-form label{text-align:left;color:#555a66;grid-column:1/-1;font-size:13px;font-weight:650}.join-form input,.text-composer textarea{color:#24262c;background:#fff;border:1px solid #dedfe6;border-radius:13px;width:100%;transition:border-color .15s,box-shadow .15s}.join-form input{letter-spacing:.18em;height:48px;padding:0 16px;font-size:18px}.join-form input:focus,.text-composer textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 4px #635bff17}.inline-error{color:#c33d4d;margin:18px 0 0;font-size:13px}.pairing-card{position:relative}.back-button{position:absolute;top:24px;left:26px}.text-button{color:#6b6f7b;cursor:pointer;background:0 0;border:0;padding:5px;font-size:13px}.text-button:hover{color:#292c34}.eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin:25px 0 8px;font-size:13px;font-weight:700}.pair-code{font-variant-numeric:tabular-nums;letter-spacing:.08em;white-space:nowrap;margin:4px 0 15px;font-size:clamp(42px,12vw,60px);font-weight:750}.muted{color:var(--muted)}.countdown{color:#969aa4;font-variant-numeric:tabular-nums;font-size:13px}.waiting-line{color:#5750d4;background:#f4f3ff;border-radius:13px;justify-content:center;align-items:center;gap:9px;min-height:45px;margin:25px 0 0;padding:12px;font-size:14px;display:flex}.pulse-dot{background:var(--accent);border-radius:50%;width:8px;height:8px;animation:1.8s infinite pulse;box-shadow:0 0 #635bff59}@keyframes pulse{65%{box-shadow:0 0 0 8px #635bff00}to{box-shadow:0 0 #635bff00}}.transfer-shell{border:1px solid var(--line);background:#fff;border-radius:24px;width:min(100% - 32px,900px);margin:32px auto 10px;overflow:hidden;box-shadow:0 20px 60px #22263712}.app-header,.connection-strip{justify-content:space-between;align-items:center;display:flex}.app-header{padding:19px 24px}.brand-row{align-items:center;gap:10px;display:flex}.mode-pill{color:#747985;background:#f2f3f6;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:650}.mode-pill.direct{color:#16835b;background:#eaf8f2}.mode-pill.relay{color:#a76808;background:#fff5dd}.connection-strip{color:#626773;border-block:1px solid var(--line);background:#f9fafc;padding:11px 24px;font-size:13px}.connection-dot{background:#d1a02e;border-radius:50%;width:7px;height:7px;margin-right:8px;display:inline-block}.connection-dot.connected{background:#22a673}.connection-dot.failed,.connection-dot.disconnected{background:#d64e5e}.drop-zone{text-align:center;background:#fcfcfd;border:1.5px dashed #d5d7df;border-radius:19px;margin:24px;padding:58px 24px;transition:border .15s,background .15s,transform .15s}.drop-zone.dragging{border-color:var(--accent);background:#f5f3ff;transform:scale(.995)}.drop-symbol{width:44px;height:44px;color:var(--accent);background:#eeecff;border-radius:14px;place-items:center;margin:0 auto 16px;font-size:27px;font-weight:300;display:grid}.drop-zone h1{letter-spacing:-.02em;margin-bottom:9px;font-size:22px}.drop-zone p{color:#838792;margin:4px 0;font-size:13px}.drop-zone .primary-button{margin-top:20px}.text-composer{border:1px solid var(--line);background:#fafbfc;border-radius:16px;align-items:center;gap:9px;margin:0 24px 28px;padding:8px;display:flex}.text-composer textarea{resize:vertical;background:0 0;border:0;min-height:54px;padding:12px}.recent{border-top:1px solid var(--line);padding:24px}.section-title{justify-content:space-between;align-items:baseline;margin-bottom:14px;display:flex}.section-title h2{margin:0;font-size:15px}.section-title span{color:#9a9da5;font-size:12px}.empty-state{text-align:center;color:#9a9da6;background:#fafbfc;border-radius:14px;padding:35px 18px;font-size:13px}.transfer-list{gap:8px;display:grid}.transfer-item{border:1px solid #ececf1;border-radius:14px;align-items:flex-start;gap:13px;padding:15px;display:flex}.transfer-icon{color:#5a53db;background:#f0efff;border-radius:10px;flex:0 0 34px;place-items:center;width:34px;height:34px;display:grid}.transfer-main{flex:1;min-width:0}.transfer-title-row{align-items:center;gap:9px;display:flex}.transfer-title-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.transfer-title-row span,.transfer-label{color:#9296a0;font-size:11px}.progress-track{background:#ececf1;border-radius:99px;height:5px;margin:11px 0 7px;overflow:hidden}.progress-track div{border-radius:inherit;background:linear-gradient(90deg,#7169ff,#5d54e8);height:100%;transition:width .2s}.transfer-meta{color:#8b8f99;font-variant-numeric:tabular-nums;justify-content:space-between;font-size:11px;display:flex}.transfer-actions{align-self:center;align-items:center;gap:8px;display:flex}.danger{color:#c34c58}.status-copy{color:#858995;margin:7px 0 0;font-size:12px}.status-copy.success{color:#16835b}.status-copy.error{color:#c23e4e}.text-transfer p{white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0 0;font-size:13px;line-height:1.5}.copy-button{color:#666b76;cursor:pointer;background:#f2f3f6;border:0;border-radius:8px;align-self:center;padding:7px 10px;font-size:11px}.image-preview{background:#eee;border-radius:8px;width:110px;max-height:86px;margin-top:10px;display:block;overflow:hidden}.image-preview img{object-fit:cover;width:100%;height:100%;display:block}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}@media (width<=620px){.home-shell{padding:20px 14px}.hero-card,.pairing-card{border-radius:22px;padding:44px 24px}.transfer-shell{width:100%;box-shadow:none;border:0;border-radius:0;margin:0}.drop-zone{margin:16px;padding:44px 16px}.text-composer{margin:0 16px 22px}.recent{padding:20px 16px}.transfer-item{flex-wrap:wrap}.transfer-actions{justify-content:flex-end;width:100%}.pair-code{font-size:43px}footer{background:#fff}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
