@font-face{font-family:Nunito;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/nunito.woff2)format("woff2")}:root{--deck-sky:#d9eaf5;--deck-sky-tint:#a3d0e9;--deck-mist:#eaf3f9;--deck-card:#fff;--deck-ink:#1b2a38;--deck-ink-soft:#5b7285;--deck-ink-soft-sky:#42586a;--deck-line:#c7d8e5;--deck-send:#0f6eaa;--deck-send-soft:#e3f0f8;--deck-receive:#d6336c;--deck-receive-soft:#fce8f0;--deck-receive-deep:#b02a5c;--deck-ready:#2e7d52;--deck-ready-soft:#e2f3e8;--deck-ready-deep:#256b45;--deck-mauve:#974a63;--deck-file-purple:#7c5cbf;--deck-file-yellow:#d9a514;--deck-grey:#8ba6b4;--deck-font:"Nunito", ui-rounded, "SF Pro Rounded", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--deck-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--deck-radius-chip:12px;--deck-radius-control:16px;--deck-radius-panel:20px;--deck-radius-pill:999px;--deck-shadow-card:0 2px 6px #1b2a380f, 0 12px 28px #1b2a3814;--deck-shadow-tile:0 1px 3px #1b2a380d, 0 4px 12px #1b2a380f;--deck-shadow-focus:0 0 0 2px #0f6eaa29}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px}body{background:var(--deck-sky);min-width:320px;color:var(--deck-ink);font-family:var(--deck-font);caret-color:var(--deck-send);scrollbar-color:var(--deck-ink-soft) var(--deck-sky);margin:0}#root{min-height:100vh}::selection{background:var(--deck-send);color:var(--deck-card)}:focus-visible{outline:2px solid var(--deck-send);outline-offset:2px}h1,h2,h3,h4{text-wrap:balance}p,li{text-wrap:pretty}.deck-page{width:min(100%,1200px);min-height:100vh;margin:0 auto;padding:24px clamp(16px,3vw,32px) 48px}.deck-page .ant-btn{border-radius:var(--deck-radius-pill);min-height:48px;font-family:var(--deck-font);box-shadow:none;touch-action:manipulation;font-size:14px;font-weight:700;transition:color .14s ease-out,background-color .14s ease-out,border-color .14s ease-out,transform .14s ease-out}.deck-page .ant-btn-primary{min-height:52px;font-weight:800}.deck-page .ant-input{border-radius:var(--deck-radius-control);min-height:48px;font-family:var(--deck-font);font-size:16px}.deck-page .ant-input:focus,.deck-page .ant-input-focused{box-shadow:var(--deck-shadow-focus)}.deck-header{align-items:center;gap:12px;margin-bottom:8px;display:flex}.deck-avatar{background:var(--deck-send);width:40px;height:40px;color:var(--deck-card);border-radius:50%;flex:0 0 40px;place-items:center;font-size:16px;font-weight:900;line-height:1;display:grid}.deck-title-block{flex:1;min-width:0}.deck-title{letter-spacing:-.02em;margin:0;font-size:26px;font-weight:900;line-height:1.15}.deck-tagline{max-width:68ch;color:var(--deck-ink-soft-sky);margin:0 0 24px 52px;font-size:14px;line-height:1.5}.deck-status{border:1.5px solid var(--deck-line);border-radius:var(--deck-radius-pill);background:var(--deck-card);color:var(--deck-ink-soft);white-space:nowrap;box-shadow:var(--deck-shadow-card);flex:none;align-items:center;gap:8px;padding:7px 12px;font-size:13px;font-weight:800;line-height:1.4;display:inline-flex}.deck-dot-signal{background:var(--deck-grey);border-radius:50%;flex:0 0 8px;width:8px;height:8px;display:inline-block}.deck-status.is-listening{border-color:var(--deck-ready);color:var(--deck-ready-deep)}.deck-status.is-listening .deck-dot-signal,.deck-note .deck-dot-signal{background:var(--deck-ready)}.deck-status.is-live{border-color:var(--deck-send);color:var(--deck-send)}.deck-status.is-live .deck-dot-signal{background:var(--deck-send)}.deck-start-panel{border:1px solid var(--deck-line);border-radius:var(--deck-radius-panel);background:var(--deck-card);width:min(100%,520px);box-shadow:var(--deck-shadow-card);margin:32px auto 0;padding:28px}.deck-start-panel p{color:var(--deck-ink-soft);margin:0 0 20px;font-size:16px;line-height:1.5}.deck-name-label{color:var(--deck-ink);margin-bottom:8px;font-size:14px;font-weight:700;display:block}.deck-start-panel .ant-input{margin-bottom:16px}.deck-start-panel .ant-btn{width:100%;min-height:48px;font-size:16px}.deck-steps{grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);grid-template-areas:"session connect""session send";align-items:start;gap:16px 20px;margin:0;padding:0;list-style:none;display:grid}.deck-step{border:1px solid var(--deck-line);border-radius:var(--deck-radius-panel);background:var(--deck-card);min-width:0;box-shadow:var(--deck-shadow-card);padding:24px}.deck-step:first-child{grid-area:session}.deck-step:nth-child(2){grid-area:connect}.deck-step:nth-child(3){grid-area:send}.deck-step-head{align-items:center;gap:10px;margin-bottom:12px;display:flex}.deck-step-chip{border-radius:var(--deck-radius-chip);flex:0 0 28px;place-items:center;width:28px;height:28px;font-size:14px;font-weight:900;line-height:1;display:grid}.deck-step-chip-step-1{background:var(--deck-send-soft);color:var(--deck-send)}.deck-step-chip-step-2{background:var(--deck-receive-soft);color:var(--deck-receive-deep)}.deck-step-chip-step-3{background:var(--deck-ready-soft);color:var(--deck-ready-deep)}.deck-step.is-done .deck-step-chip-step-1{background:var(--deck-send);color:var(--deck-card)}.deck-step.is-done .deck-step-chip-step-2{background:var(--deck-receive);color:var(--deck-card)}.deck-step.is-done .deck-step-chip-step-3{background:var(--deck-ready);color:var(--deck-card)}.deck-step-title{color:var(--deck-ink);margin:0;font-size:18px;font-weight:800;line-height:1.3}.deck-step-hint{color:var(--deck-ink-soft);margin:0 0 16px;font-size:14px;line-height:1.5}.deck-step-body{min-width:0}.deck-qr-panel{border:1px solid var(--deck-line);border-radius:var(--deck-radius-control);background:var(--deck-mist);text-align:center;padding:20px 16px 16px}.deck-qr-card{border-radius:var(--deck-radius-chip);background:var(--deck-card);max-width:100%;box-shadow:var(--deck-shadow-card);border:1px solid #1b2a3814;padding:10px;line-height:0;display:inline-block}.deck-id-label{color:var(--deck-send);margin:14px 0 4px;font-size:12px;font-weight:800}.deck-id{color:var(--deck-ink);font-family:var(--deck-mono);overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin:0 0 14px;font-size:14px;line-height:1.5}.deck-display-name{color:var(--deck-ink);overflow-wrap:anywhere;margin:0 0 16px;font-size:16px;font-weight:800;line-height:1.5}.deck-qr-panel .ant-btn{width:100%;min-height:48px;font-size:16px}.deck-stop{color:var(--deck-mauve);margin-top:8px}.deck-stop:hover{color:var(--deck-mauve);text-decoration:underline}.deck-exchange{border:1px solid var(--deck-line);border-radius:var(--deck-radius-panel);background:var(--deck-sky-tint);text-align:center;margin:0 0 16px;padding:12px 16px}.deck-exchange-art{width:100%;max-width:300px;height:auto;margin:0 auto;display:block}.deck-exchange-caption{color:var(--deck-ink);margin:8px 0 0;font-size:14px;font-weight:700;line-height:1.4}.deck-method{border:1px solid var(--deck-line);border-radius:var(--deck-radius-control);background:var(--deck-mist);box-shadow:var(--deck-shadow-tile);margin:10px 0 0;padding:14px}.deck-method:last-child{padding-bottom:14px}.deck-connect-title{color:var(--deck-ink);align-items:center;gap:10px;margin:0 0 8px;font-size:16px;font-weight:800;line-height:1.35;display:flex}.deck-connect-icon{border-radius:var(--deck-radius-chip);border:1px solid;flex:0 0 32px;place-items:center;width:32px;height:32px;font-size:16px;display:grid}.deck-connect-icon-blue{background:var(--deck-send-soft);color:var(--deck-send)}.deck-connect-icon-pink{background:var(--deck-receive-soft);color:var(--deck-receive-deep)}.deck-connect-icon-green{background:var(--deck-ready-soft);color:var(--deck-ready-deep)}.deck-row,.deck-msg-row{align-items:stretch;gap:8px;display:flex}.deck-row .ant-input,.deck-msg-row .ant-input{min-width:0;min-height:48px}.deck-row .ant-btn,.deck-msg-row .ant-btn{flex:none;min-height:48px}.deck-note{color:var(--deck-ink-soft);margin:10px 0 0;font-size:14px;line-height:1.5}.deck-note .deck-dot-signal{vertical-align:1px;margin-right:8px}.deck-note-tight{margin-top:0}.deck-method .deck-note{color:var(--deck-ink-soft-sky)}.deck-error{color:var(--deck-mauve);margin:10px 0 0;font-size:14px;font-weight:700;line-height:1.5}.deck-requests{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.deck-request{border:1px solid var(--deck-receive);border-radius:var(--deck-radius-control);background:var(--deck-receive-soft);padding:12px}.deck-request-text{margin-bottom:10px;font-size:14px;line-height:1.5;display:block}.deck-request-actions{gap:8px;display:flex}.deck-request-actions .ant-btn{flex:1}.deck-peer-list{flex-direction:column;gap:8px;display:flex}.deck-peer{border:1px solid var(--deck-line);border-radius:var(--deck-radius-control);background:var(--deck-card);width:100%;min-height:56px;color:var(--deck-ink);font-family:var(--deck-font);text-align:left;cursor:pointer;touch-action:manipulation;flex-direction:column;align-items:stretch;gap:8px;padding:10px 12px;transition:border-color .14s ease-out,background-color .14s ease-out,box-shadow .14s ease-out,transform .14s ease-out;display:flex}.deck-peer.is-selected{border-color:var(--deck-send);background:var(--deck-send-soft);box-shadow:inset 0 0 0 1px var(--deck-send)}.deck-peer:disabled{background:var(--deck-mist);color:var(--deck-ink-soft);cursor:not-allowed}.deck-peer:disabled:hover{border-color:var(--deck-line)}.deck-peer-top,.deck-peer-bottom{align-items:center;gap:8px;display:flex}.deck-peer-top .deck-peer-name,.deck-peer-bottom .deck-peer-id{flex:1;min-width:0}.deck-peer-name{color:var(--deck-ink);text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:800;line-height:1.35;overflow:hidden}.deck-peer-id{color:var(--deck-ink-soft);font-family:var(--deck-mono);text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px;line-height:1.4;overflow:hidden}.deck-peer-state{color:var(--deck-send);flex:none;font-size:14px;font-weight:800}.deck-peer-via{border:1px solid var(--deck-line);border-radius:var(--deck-radius-pill);background:var(--deck-card);color:var(--deck-ink-soft-sky);flex:none;padding:4px 8px;font-size:12px;font-weight:700}.deck-file-zone{border:1px dashed var(--deck-ink-soft);border-radius:var(--deck-radius-control);background:var(--deck-mist);text-align:center;padding:16px}.deck-file-zone.has-file{border-style:solid;border-color:var(--deck-send);background:var(--deck-send-soft)}.deck-file-name{color:var(--deck-ink);overflow-wrap:anywhere;margin:0 0 12px;font-size:16px;font-weight:800;display:block}.deck-file-zone .ant-btn{width:100%;min-height:48px;font-size:16px}.deck-divider{color:var(--deck-ink-soft);align-items:center;gap:12px;margin:16px 0;font-size:12px;font-weight:700;display:flex}.deck-divider:before,.deck-divider:after{background:var(--deck-line);content:"";flex:1;height:1px}.deck-progress{margin-top:12px}.deck-progress .ant-progress-bg{background:var(--deck-send)}.deck-progress .ant-progress-text{color:var(--deck-ink-soft);font-family:var(--deck-mono);font-variant-numeric:tabular-nums;font-size:12px}.deck-history{margin-top:20px}.deck-history-title{color:var(--deck-ink);margin:0 0 10px;font-size:18px;font-weight:800;line-height:1.3}.deck-history-card,.deck-history-empty{border:1px solid var(--deck-line);border-radius:var(--deck-radius-panel);background:var(--deck-card);box-shadow:var(--deck-shadow-card)}.deck-history-card{padding:4px 16px}.deck-history-list{margin:0;padding:0;list-style:none}.deck-history-item{border-bottom:1px solid var(--deck-line);align-items:center;gap:12px;padding:12px 0;font-size:14px;line-height:1.45;display:flex}.deck-history-item:last-child{border-bottom:0}.deck-history-direction{width:32px;height:32px;color:var(--deck-card);border-radius:50%;flex:0 0 32px;place-items:center;font-size:14px;display:grid}.deck-history-direction-sent{background:var(--deck-send)}.deck-history-direction-received{background:var(--deck-receive)}.deck-history-type{color:var(--deck-ink-soft);flex:none;font-size:16px}.deck-history-label{-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;min-width:0;display:-webkit-box;overflow:hidden}.deck-history-peer{color:var(--deck-ink-soft);text-overflow:ellipsis;white-space:nowrap;flex:0 160px;font-size:12px;overflow:hidden}.deck-history-time{color:var(--deck-ink-soft);font-family:var(--deck-mono);font-variant-numeric:tabular-nums;flex:none;font-size:12px}.deck-history-empty{color:var(--deck-ink-soft);margin:0;padding:16px;font-size:14px;line-height:1.5}@media (hover:hover) and (pointer:fine){.deck-page .ant-btn:not(:disabled):hover{transform:translateY(-1px)}.deck-peer:not(:disabled):hover{border-color:var(--deck-send);box-shadow:var(--deck-shadow-card)}}.deck-page .ant-btn:active,.deck-peer:active{transform:translateY(0)}.deck-stop:active{color:var(--deck-mauve)}@media (width<=920px){.deck-page{width:min(100%,760px)}.deck-steps{grid-template-columns:minmax(0,1fr);grid-template-areas:"session""connect""send"}}@media (width<=620px){.deck-page{padding:16px 16px 32px}.deck-header{flex-wrap:wrap}.deck-title-block{flex:180px}.deck-status{margin-left:52px}.deck-tagline{margin:4px 0 20px 52px}.deck-step{padding:16px}.deck-step-head{margin-bottom:10px}.deck-row,.deck-msg-row{flex-direction:column}.deck-row .ant-btn,.deck-msg-row .ant-btn{width:100%}.deck-request-actions{flex-direction:column}.deck-history-item{flex-wrap:wrap;row-gap:6px}.deck-history-label{flex:calc(100% - 84px)}.deck-history-peer{flex:auto;max-width:calc(100% - 100px);margin-left:44px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.deck-page .ant-btn,.deck-peer{transition:none}}
