#fufu-bond-root{--bond-ink:#233d38;--bond-secondary:#334941;--bond-soft:#3d514b;--bond-control:#486157;--bond-edge:rgba(255,255,255,.65);font:13px/1.55 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;color:var(--bond-ink);position:fixed;z-index:18000;right:0;top:0;-webkit-app-region:no-drag;pointer-events:none}
#fufu-bond-root *{box-sizing:border-box}#fufu-bond-root button,#fufu-bond-root input,#fufu-bond-root textarea{font:inherit}#fufu-bond-root button,#fufu-bond-root a{touch-action:manipulation}#fufu-bond-root [hidden]{display:none!important}
#fufu-bond-root #fufu-bond-toggle{pointer-events:none;position:fixed;right:22px;top:35px;display:grid;place-items:center;width:38px;height:42px!important;padding:4px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(5px) scale(.8);transition:opacity .25s,transform .38s cubic-bezier(.2,.8,.2,1),visibility .25s;outline:0}
#fufu-bond-root[data-chat-active=true] #fufu-bond-toggle{pointer-events:auto;opacity:.88;visibility:visible;transform:none}#fufu-bond-root[data-chat-active=true] #fufu-bond-toggle:hover{opacity:1;transform:translateY(-1px)}#fufu-bond-root #fufu-bond-toggle:active{transform:scale(.93)}#fufu-bond-toggle .bond-dna{width:28px;height:32px;overflow:visible;stroke:url(#bond-dna-light);fill:none;stroke-width:1.6;stroke-linecap:round;filter:drop-shadow(0 0 2px #e9fffa9c) drop-shadow(0 0 5px #a9d7d240);transition:filter .25s}#fufu-bond-toggle:hover .bond-dna,#fufu-bond-toggle:focus-visible .bond-dna{filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 7px #9dcccb80)}
.bond-dna-core{transform-origin:14px 16px;animation:bond-dna-sway 6s ease-in-out infinite}.bond-dna-strand{transform-origin:14px 16px;animation:bond-dna-turn 4.8s ease-in-out infinite}.bond-dna-back{animation-delay:-2.4s}.bond-dna-rungs{stroke-width:1.1;opacity:.64}.bond-dna-rungs path{transform-origin:14px 16px;animation:bond-dna-rung 4.8s ease-in-out infinite}.bond-dna-rungs path:nth-child(2n){animation-delay:-1.2s}.bond-dna-rungs path:nth-child(3n){animation-delay:-2.4s}#fufu-bond-toggle[data-minimised=true] .bond-dna{filter:drop-shadow(0 0 3px #e2fff6c2) drop-shadow(0 0 8px #a9d7d263)}
@keyframes bond-dna-sway{0%,100%{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(3deg) translateY(-1px)}}@keyframes bond-dna-turn{0%,100%{opacity:.98;transform:scaleX(1)}50%{opacity:.58;transform:scaleX(.73)}}@keyframes bond-dna-rung{0%,100%{opacity:.75;transform:scaleX(.95)}50%{opacity:.4;transform:scaleX(.6)}}
.bond-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#fufu-bond-panel,#fufu-bond-notes-panel{pointer-events:auto;position:fixed;top:66px;right:16px;--bond-panel-pad:21px;width:min(354px,calc(100vw - 32px));max-height:min(660px,calc(100dvh - 88px));overflow:auto;overscroll-behavior:contain;scrollbar-width:none;-ms-overflow-style:none;border:1px solid rgba(255,255,255,.68);border-radius:25px;padding:var(--bond-panel-pad);background:radial-gradient(ellipse at 8% 0%,rgba(255,255,255,.31),transparent 57%),linear-gradient(138deg,rgba(248,255,250,.61),rgba(230,246,236,.38) 48%,rgba(204,232,215,.28));background-color:rgba(238,248,243,.72);backdrop-filter:blur(32px) saturate(135%);-webkit-backdrop-filter:blur(32px) saturate(135%);box-shadow:0 20px 54px #244d3b20,0 4px 12px #244d3b0c,inset 1px 1px 1px #ffffffb5,inset -1px -1px 1px #7ba78b26;transform-origin:top right;animation:bond-enter .32s cubic-bezier(.16,1,.3,1)}
#fufu-bond-panel::-webkit-scrollbar,#fufu-bond-notes-panel::-webkit-scrollbar,.bond-messages::-webkit-scrollbar,#fufu-bond-root textarea::-webkit-scrollbar{display:none;width:0;height:0}@keyframes bond-enter{from{opacity:0;transform:translateY(8px) scale(.975)}to{opacity:1;transform:none}}
.bond-head{display:flex;align-items:center;gap:10px;min-height:37px;position:sticky;top:0;z-index:3;margin:calc(-1 * var(--bond-panel-pad)) calc(-1 * var(--bond-panel-pad)) 0;padding:var(--bond-panel-pad) var(--bond-panel-pad) 12px;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:0}.bond-heading{min-width:0;flex:1}.bond-head h2{margin:3px 0 0;font-size:19px;font-weight:450;letter-spacing:.075em;color:var(--bond-secondary)}.bond-eyebrow{font-size:8px;letter-spacing:.19em;color:var(--bond-soft);white-space:nowrap}.bond-window-actions{display:flex;align-items:center;gap:6px}.bond-sub{color:var(--bond-soft);font-size:11px;margin:17px 0 18px;line-height:1.75}
#fufu-bond-root button{border:1px solid #ffffff80;border-radius:12px;padding:9px 13px;background:#ffffff54;color:var(--bond-ink);cursor:pointer;transition:background .2s,transform .2s,box-shadow .2s}#fufu-bond-root button:active{transform:scale(.97)}#fufu-bond-root button:disabled{opacity:.4;cursor:default}#fufu-bond-root button.bond-primary{background:linear-gradient(135deg,rgba(250,255,250,.75),rgba(198,225,211,.4));color:var(--bond-secondary);border-color:rgba(255,255,255,.78);box-shadow:inset 0 1px 1px #ffffffd1,0 3px 10px #7197820c}#fufu-bond-root button.bond-primary:hover:not(:disabled){background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(195,223,205,.6));box-shadow:inset 0 1px 1px #fff,0 5px 14px #6d9a7714}
#fufu-bond-root button.bond-icon-button{display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;padding:0;border:1px solid rgba(255,255,255,.48);border-radius:50%;background:rgba(255,255,255,.26);box-shadow:inset 0 1px 0 #ffffff70;color:var(--bond-control)}#fufu-bond-root button.bond-icon-button:hover{background:rgba(255,255,255,.56)}#fufu-bond-root button.bond-icon-button:active{transform:scale(.94)}.bond-icon-button svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}#bond-copy svg{width:13px;height:13px}#bond-back{margin-left:-4px}
#fufu-bond-root label{display:block;color:var(--bond-soft);font-size:10px;margin:12px 0 5px}#fufu-bond-root input,#fufu-bond-root textarea{width:100%;padding:10px 12px;border:1px solid #aabfb02e;border-radius:12px;color:var(--bond-ink);background:#ffffff4d;outline:none;-webkit-user-select:text;user-select:text;transition:border-color .2s,box-shadow .2s}#fufu-bond-root input:focus,#fufu-bond-root textarea:focus{border-color:#8cae986e;box-shadow:0 0 0 3px #abc4ac12}#fufu-bond-root textarea{resize:vertical;min-height:120px;scrollbar-width:none}
.bond-actions{display:flex;gap:8px;margin-top:12px;align-items:center;flex-wrap:wrap}.bond-actions>*{flex:1}.bond-divider{display:flex;align-items:center;gap:11px;margin:18px 0 9px;font-size:9px;color:var(--bond-soft)}.bond-divider:before,.bond-divider:after{content:"";height:1px;flex:1;background:#8ea68f1c}.bond-fine{font-size:9px;color:var(--bond-soft);line-height:1.7}.bond-rule{border:0;border-top:1px solid #91a5911c;margin:19px 0}
#fufu-bond-root button.bond-current{display:grid;grid-template-columns:1fr 16px;text-align:left;gap:3px 8px;width:100%;margin:0 0 17px;padding:11px 12px;background:#fafff958;border-color:#ffffff94;font-size:12px}.bond-current small{grid-column:1;font-size:9px;color:var(--bond-soft);font-weight:400}.bond-current svg{grid-column:2;grid-row:1/3;align-self:center;width:14px;height:14px;fill:none;stroke:var(--bond-control);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.bond-status{font-size:9px;line-height:1.6;min-height:15px;margin:12px 0 0;color:var(--bond-soft);letter-spacing:.02em}.bond-privacy{padding-top:8px;margin-top:3px;font-size:8px;letter-spacing:.025em;color:var(--bond-soft);line-height:1.7}.bond-invitation{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px;padding:10px 11px;border-radius:13px;border:1px solid #ffffff52;background:#f7fff62e}.bond-code{display:block;font-size:10px;font-weight:450;letter-spacing:.05em;overflow-wrap:anywhere;margin:3px 0 0;color:var(--bond-secondary);user-select:text;-webkit-user-select:text}.bond-members{font-size:10px;color:var(--bond-soft);margin:12px 2px 9px;overflow-wrap:anywhere}
.bond-messages{height:224px;overflow:auto;overscroll-behavior:contain;scrollbar-width:none;-ms-overflow-style:none;background:#ffffff19;border:1px solid #ffffff48;border-radius:15px;padding:11px;scroll-behavior:smooth}.bond-message{margin:0 22px 12px 0}.bond-message.bond-own{margin:0 0 12px 22px}.bond-message small{font-size:8px;color:var(--bond-soft)}.bond-message p{white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0 0;border-radius:4px 13px 13px 13px;padding:8px 10px;background:#ffffff73;font-size:12px;line-height:1.65;color:var(--bond-secondary)}.bond-message.bond-own p{background:#d9e7d871;border-radius:13px 4px 13px 13px}.bond-empty{text-align:center;padding:71px 12px;color:var(--bond-soft);font-size:10px}.bond-compose{display:flex;align-items:center;gap:7px;margin-top:10px;padding:4px 5px 4px 1px;border-radius:22px;border:1px solid #ffffff8c;background:#ffffff44;box-shadow:inset 0 1px 0 #ffffff80}#fufu-bond-root .bond-compose input{min-width:0;border:0;background:transparent;border-radius:20px;padding:7px 11px;box-shadow:none}#fufu-bond-root button.bond-send{display:grid;place-items:center;flex:0 0 29px;width:29px;height:29px;border-radius:50%;padding:0;border:1px solid #ffffff83;background:linear-gradient(145deg,#f6fff7aa,#d4e7d58a);box-shadow:inset 0 1px 0 #fff8;color:var(--bond-control)}.bond-send svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}#fufu-bond-root button.bond-send:hover{background:#eff9eef0}.bond-room-meta{display:flex;align-items:center;justify-content:space-between;margin-top:9px;font-size:9px;color:var(--bond-soft)}#fufu-bond-root button.bond-text-button{font-size:9px;color:var(--bond-soft);border:0;border-radius:7px;padding:3px 5px;background:transparent;box-shadow:none}#fufu-bond-root button.bond-text-button:hover{background:#fff4}
.bond-timer{text-align:center;font-size:38px;font-variant-numeric:tabular-nums;font-weight:300;margin:16px 0;letter-spacing:.05em;color:var(--bond-secondary)}.bond-check{display:flex!important;align-items:center;gap:7px;margin-top:17px!important}.bond-check input{width:auto!important;accent-color:#a7c2ad}
#fufu-bond-root :focus-visible{outline:2px solid #486157;outline-offset:3px}#fufu-bond-root #fufu-bond-toggle:focus-visible{outline:none}
#fufu-bond-root #bond-message:focus-visible{outline:none;box-shadow:none}
#fufu-bond-root input:focus-visible,#fufu-bond-root textarea:focus-visible{outline:none}
#fufu-bond-root .bond-compose:focus-within{border-color:#759f948f;box-shadow:inset 0 1px 0 #fff9,0 0 0 2px #a3c9bf38}
@media(max-height:560px){#fufu-bond-panel,#fufu-bond-notes-panel{top:18px;right:12px;max-height:calc(100dvh - 36px);--bond-panel-pad:17px}.bond-messages{height:145px}.bond-sub{margin:12px 0}.bond-invitation{margin-top:12px}.bond-empty{padding:38px 8px}}@media(prefers-reduced-motion:reduce){#fufu-bond-root *,#fufu-bond-panel,#fufu-bond-notes-panel{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

#fufu-bond-root input::placeholder,#fufu-bond-root textarea::placeholder{color:var(--bond-soft);opacity:1}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){#fufu-bond-panel,#fufu-bond-notes-panel{background-color:rgba(238,248,243,.94)}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){#fufu-bond-panel,#fufu-bond-notes-panel{background-color:#edf6f0}#fufu-bond-root{--bond-soft:#334941;--bond-control:#334941}}

/* Choose an invitation path before entering its small form. */
.bond-choices{display:grid;gap:10px;margin:17px 0 7px}
#fufu-bond-root button.bond-choice{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:17px 13px;border-radius:17px;background:linear-gradient(135deg,#ffffff88,#e3f1e549);box-shadow:inset 0 1px 0 #ffffffe0,0 3px 9px #56776208}
.bond-choice>span:nth-child(2){flex:1;min-width:0}.bond-choice strong{display:block;font-size:12px;font-weight:500}.bond-choice small{display:block;font-size:9px;color:var(--bond-soft);margin-top:3px}
.bond-choice svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}.bond-choice-icon{display:grid;place-items:center;width:30px;height:30px;color:#587e71}.bond-choice-icon svg{width:23px;height:23px}
#fufu-bond-root button.bond-choice:hover{background:linear-gradient(135deg,#ffffffc4,#dfefdf75);box-shadow:inset 0 1px 0 #fff,0 4px 14px #56776212}
#bond-setup .bond-actions{margin-top:19px}#bond-setup .bond-sub{margin-bottom:18px}

/* The room has a fixed, compact shell; only its messages scroll. */
#fufu-bond-panel[data-view=room]{display:flex;flex-direction:column;--bond-panel-pad:14px;height:min(480px,calc(100dvh - 88px));overflow:hidden}
#fufu-bond-panel[data-view=room]>.bond-head{flex:0 0 auto;min-height:38px;gap:7px;padding-top:7px;padding-bottom:7px;padding-right:44px}
#fufu-bond-panel[data-view=room] .bond-head h2{font-size:10px;font-weight:500;letter-spacing:.035em;line-height:1.5;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;user-select:text;-webkit-user-select:text}
#fufu-bond-panel[data-view=room] .bond-window-actions{gap:3px}#fufu-bond-panel[data-view=room] #bond-back{margin-left:-3px}
#bond-active{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow:hidden}
#bond-active .bond-members{flex:0 0 auto;font-size:9px;margin:5px 1px 9px;line-height:1.5;max-height:28px;overflow:hidden;text-overflow:ellipsis}
#bond-active .bond-messages{flex:1 1 auto;min-height:0;height:auto;border-color:#ffffff73;border-radius:14px;padding:12px 9px;background:linear-gradient(145deg,#f7fcff26,#c8e0d30f);scroll-behavior:auto}
#bond-active .bond-compose{flex:0 0 auto;margin-top:10px}
#bond-active .bond-room-meta{flex:0 0 auto;margin-top:5px;font-size:8px}
#fufu-bond-panel[data-view=room]>.bond-status{flex:0 0 auto;min-height:12px;font-size:8px;line-height:1.5;margin:3px 0 0;color:var(--bond-soft)}
#fufu-bond-panel[data-view=room]>.bond-privacy{display:none}
.bond-message{display:flex;flex-direction:column;align-items:flex-start;max-width:91%;margin:0 auto 13px 0}
.bond-message.bond-own{align-items:flex-end;margin:0 0 13px auto}
.bond-message small{max-width:100%;font-size:8px;margin:0 2px 3px;overflow-wrap:anywhere}
.bond-message-content{display:flex;align-items:flex-end;gap:4px;max-width:100%;min-width:0}
.bond-message p{min-width:0;margin:0;border:1px solid #f7fcffe8;border-radius:5px 14px 14px 14px;background:linear-gradient(140deg,rgba(247,252,255,.92),rgba(213,232,245,.7));box-shadow:inset 0 1px 0 #ffffffc2,0 2px 4px #4c677409;color:#294651;padding:8px 10px;font-size:12px}
.bond-message.bond-own p{border-color:#e8f9edcf;border-radius:14px 5px 14px 14px;background:linear-gradient(135deg,rgba(196,229,208,.86),rgba(163,207,184,.71));box-shadow:inset 0 1px 0 #ffffffab,0 2px 4px #4166520a;color:#274b3c}
.bond-receipt{display:grid;place-items:center;flex:0 0 16px;width:16px;height:20px;margin-bottom:3px;color:#638476;opacity:.8}
.bond-receipt svg{display:block;width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.bond-receipt-sending svg{animation:bond-sending-turn 1.1s linear infinite;opacity:.65}.bond-receipt-read{color:#397e84;opacity:1}.bond-receipt-read svg{animation:bond-read-glow .48s ease-out}.bond-receipt-failed{color:#916846;opacity:1}
#fufu-bond-root button.bond-retry{display:grid;place-items:center;width:24px;height:24px;padding:4px;margin:-2px -4px;border:0;border-radius:50%;background:transparent;color:inherit;box-shadow:none}
#fufu-bond-root button.bond-retry:hover{background:#fff8}#fufu-bond-root button.bond-retry:focus-visible{outline:2px solid #8aaea0;outline-offset:1px}
@keyframes bond-sending-turn{to{transform:rotate(360deg)}}@keyframes bond-read-glow{0%{filter:drop-shadow(0 0 0 #cffff700)}45%{filter:drop-shadow(0 0 3px #b0fff1)}100%{filter:none}}
@media(max-height:560px){#fufu-bond-panel[data-view=room]{height:calc(100dvh - 36px)}#bond-active .bond-members{margin:2px 0 5px}#bond-active .bond-compose{margin-top:7px}.bond-message{margin-bottom:10px}.bond-message.bond-own{margin-bottom:10px}}
@media(max-width:350px){#fufu-bond-panel[data-view=room]{--bond-panel-pad:11px}.bond-head h2{font-size:17px}#fufu-bond-panel[data-view=room] .bond-head h2{font-size:9px;letter-spacing:0}.bond-message{max-width:95%}}
