:root{--bg:#f4f6f9;--surface:#fff;--text:#1c2430;--muted:#5a6577;--border:#d6dce5;--accent:#1f5fbf;--accent-hover:#194f9f;--accent-contrast:#fff;--send:#1f5fbf;--receive:#2e8b4e;--tool:#c8641a;--success:#2e8b4e;--warning:#c8641a;--danger:#b3261e;--danger-hover:#93201a;--danger-bg:#fdecea;--success-bg:#e3f3e8;--warning-bg:#fbeee3;--focus:#ffb400;--sel:#1f5fbf26;--radius:8px;--radius-sm:6px;--header-h:48px;--shadow:0 1px 3px #00000014,0 4px 12px #0000000a;--buncss-light:initial;--buncss-dark: ;color-scheme:light dark;--fg:var(--text);--bg-surface:var(--surface);--border-color:var(--border);--primary-color:var(--accent);--surface-color:var(--surface);--radius-md:var(--radius);--color-error:var(--danger)}@media (prefers-color-scheme:dark){:root{--buncss-light: ;--buncss-dark:initial}}:root[data-theme=light]{--buncss-light:initial;--buncss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#14181f;--surface:#1d232c;--text:#e6eaf0;--muted:#9aa5b5;--border:#333c49;--accent:#6ea2f5;--accent-hover:#8db6f7;--accent-contrast:#0b1220;--send:#6ea2f5;--receive:#5cc27f;--tool:#f0995a;--success:#5cc27f;--warning:#f0995a;--danger:#ff8a80;--danger-hover:#ffa59d;--danger-bg:#3a1a18;--success-bg:#17301f;--warning-bg:#3a2616;--sel:#6ea2f540;--shadow:0 1px 3px #0006;--buncss-light: ;--buncss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#14181f;--surface:#1d232c;--text:#e6eaf0;--muted:#9aa5b5;--border:#333c49;--accent:#6ea2f5;--accent-hover:#8db6f7;--accent-contrast:#0b1220;--send:#6ea2f5;--receive:#5cc27f;--tool:#f0995a;--success:#5cc27f;--warning:#f0995a;--danger:#ff8a80;--danger-hover:#ffa59d;--danger-bg:#3a1a18;--success-bg:#17301f;--warning-bg:#3a2616;--sel:#6ea2f540;--shadow:0 1px 3px #0006;--buncss-light: ;--buncss-dark:initial;color-scheme:dark}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);min-height:100dvh;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;line-height:1.5}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}#app{display:flex;flex-direction:column;min-height:100dvh}main{flex:1;width:100%;max-width:960px;margin:0 auto;padding:1.5rem 1rem 2rem}header{background:var(--surface);border-bottom:1px solid var(--border);position:sticky;z-index:50;top:0}header nav{display:flex;min-height:var(--header-h);align-items: center;gap:8px;max-width:960px;margin:0 auto;padding:6px 12px}.logo-link{display:inline-flex;text-decoration:none;color:var(--text);border-radius:var(--radius-sm);align-items: center;gap:8px}.brand{display:inline-grid;border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-contrast);place-items: center;min-width:28px;height:28px;padding:0 6px;font-size:.8rem;font-weight:700}.logo-link h1{font-size:1.05rem;font-weight:600}.app-version{color:var(--muted);text-decoration:none;white-space:nowrap;border-radius:4px;padding:2px 4px;font-family:ui-monospace,monospace;font-size:.75rem}.app-version:hover{color:var(--accent);text-decoration:underline}.build-hash{font-family:ui-monospace,monospace;font-size:.7rem}@media (max-width:480px){.build-hash{display:none}}.nav-actions{display:flex;align-items: center;gap:6px;margin-inline-start:auto}header nav .icon-btn{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-sm);cursor:pointer;display:flex;text-decoration:none;justify-content:center;align-items: center;width:32px;height:32px;transition:border-color .15s;font-size:1.05rem}header nav .icon-btn:hover{border-color:var(--accent)}.icon-svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.update-banner{position:fixed;bottom:16px;z-index:100;display:flex;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;align-items: center;gap:8px;max-width:calc(100vw - 32px);padding:10px 14px;box-shadow:0 4px 16px #0003}.update-banner:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:16px}.update-banner:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:16px}.update-banner:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:16px}.update-banner:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:16px}.update-banner:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:16px}.update-banner:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:16px}.update-banner button{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;min-height:32px;padding:4px 10px}.update-banner button.primary{background:var(--accent);color:var(--accent-contrast);border-color:var(--accent)}@media print{.update-banner{display:none!important}}.landing{padding:1rem 0}.landing h2{max-width:480px;margin:0 auto 1rem;font-size:1.1rem}.landing .mode-grid+h2{margin-top:2rem}.landing>.settings-hint{max-width:480px;margin:1rem auto 0}.mode-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;max-width:480px;margin:0 auto}@media (max-width:400px){.mode-grid{grid-template-columns:1fr}}.mode-group-title{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;max-width:480px;margin:1.5rem auto .75rem;font-size:.85rem;font-weight:600}.mode-btn{display:flex;text-align:start;background:var(--surface);border:1px solid var(--border);border-inline-start:6px solid var(--accent);border-radius:var(--radius);color:var(--text);cursor:pointer;flex-direction:column;justify-content:flex-end;align-items: flex-start;gap:.25rem;min-height:110px;padding:16px;transition:border-color .15s,box-shadow .15s;font-family:inherit}.mode-btn:hover{border-color:var(--accent);box-shadow:var(--shadow)}.mode-btn--send{border-inline-start-color:var(--send)}.mode-btn--receive{border-inline-start-color:var(--receive)}.mode-btn--tool{border-inline-start-color:var(--tool)}.mode-btn--full{grid-column:1/-1}.mode-icon{margin-bottom:auto;font-size:1.5rem;line-height:1}.mode-label{font-size:1.05rem;font-weight:600}.mode-desc{color:var(--muted);font-size:.85rem}button{font-family:inherit;font-size:inherit}section>button{background:var(--accent);color:var(--accent-contrast);border-radius:var(--radius);cursor:pointer;border:none;margin-top:1rem;padding:.5rem 1rem}section>button:hover{background:var(--accent-hover)}.view-header{display:flex;align-items: center;gap:1rem;margin-bottom:1.5rem}.view-header button{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-sm);cursor:pointer;min-height:32px;padding:4px 10px}.view-header button:hover{border-color:var(--accent)}.sr-only{position:absolute;overflow:hidden;clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0}.error-msg{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger);border-radius:var(--radius);margin-bottom:1rem;padding:.75rem 1rem}.drop-zone{border:2px dashed var(--border);border-radius:var(--radius);text-align:center;cursor:pointer;margin-bottom:1rem;padding:3rem 2rem;transition:border-color .15s}.drop-zone:hover{border-color:var(--accent)}.drop-zone:focus-visible{border-color:var(--accent)}.drop-hint{opacity:.6;margin-top:.5rem;font-size:.8rem}.preset-selector{display:flex;align-items: center;gap:.75rem;margin-bottom:1rem}.preset-selector select{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);color:var(--fg);flex:1;padding:.5rem;font-family:inherit}.qr-display{display:flex;justify-content:center;margin-bottom:1rem}.qr-image{image-rendering:pixelated;background:#fff;border-radius:4px;width:480px;max-width:100%;height:auto;padding:8px}.transfer-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:1rem}.stat{text-align:center}.stat-label{display:block;opacity:.7;text-transform:uppercase;font-size:.75rem}.stat-value{font-size:1.1rem;font-weight:600}.fps-control{margin-bottom:1rem}.fps-control input[type=range]{width:100%;margin-top:.5rem}.stop-btn,.start-btn{display:block;background:var(--accent);color:var(--accent-contrast);border-radius:var(--radius);cursor:pointer;border:none;width:100%;padding:.75rem;font-weight:600}.stop-btn{background:var(--danger);color:var(--accent-contrast)}.stop-btn:hover{background:var(--danger-hover)}.start-btn:hover{background:var(--accent-hover)}.receiver-setup{text-align:center;padding:2rem 0}.receiver-setup p{margin-bottom:1rem}.receiver-active{display:flex;flex-direction:column;align-items: center}.viewfinder{position:relative;overflow:hidden;border-radius:var(--radius);aspect-ratio:1;background:#000;width:min(100%,100dvh - 11rem);margin-bottom:.5rem}.camera-video{object-fit:cover;display:block;width:100%;height:100%}.viewfinder-overlay{position:absolute;pointer-events:none;inset:10%}.corner{position:absolute;border-color:var(--accent);border-style:solid;border-width:0;width:24px;height:24px}.corner.tl{top:0;border-top-width:3px;border-inline-start-width:3px}.corner.tl:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:0}.corner.tl:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:0}.corner.tl:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:0}.corner.tl:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:0}.corner.tl:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:0}.corner.tl:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:0}.corner.tr{top:0;border-top-width:3px;border-inline-end-width:3px}.corner.tr:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:0}.corner.tr:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:0}.corner.tr:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:0}.corner.tr:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:0}.corner.tr:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:0}.corner.tr:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:0}.corner.bl{bottom:0;border-bottom-width:3px;border-inline-start-width:3px}.corner.bl:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:0}.corner.bl:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:0}.corner.bl:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:0}.corner.bl:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:0}.corner.bl:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:0}.corner.bl:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:0}.corner.br{bottom:0;border-bottom-width:3px;border-inline-end-width:3px}.corner.br:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:0}.corner.br:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:0}.corner.br:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:0}.corner.br:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:0}.corner.br:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:0}.corner.br:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:0}.receiver-active .transfer-stats{margin-bottom:.5rem}.receiver-active .progress-bar,.receiver-active .stop-btn{width:100%}.progress-bar{background:var(--bg-surface);overflow:hidden;border-radius:4px;height:8px;margin-bottom:.5rem}.progress-fill{background:var(--accent);height:100%;transition:width .3s}.receiver-complete{text-align:center;padding:1rem 0}.file-info{text-align:start;background:var(--bg-surface);border-radius:var(--radius);margin:1rem 0;padding:1rem}.file-info p{margin-bottom:.5rem}.file-info code{word-break:break-all;font-size:.8rem}.verified{color:var(--success);font-weight:600}.not-verified{color:var(--danger);font-weight:600}.download-btn{display:inline-block;background:var(--accent);color:var(--accent-contrast);text-decoration:none;border-radius:var(--radius);margin-bottom:.5rem;padding:.75rem 2rem;font-weight:600}.download-btn:hover{background:var(--accent-hover)}.peer-id-input{display:flex;gap:.5rem;margin-top:1rem}.peer-id-input input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);color:var(--fg);flex:1;padding:.5rem;font-family:monospace}.confirmation-code{letter-spacing:.5rem;text-align:center;background:var(--bg-surface);border-radius:var(--radius);margin:1rem 0;padding:1rem;font-family:monospace;font-size:3rem;font-weight:700}.peer-id-text{word-break:break-all;opacity:.7;margin-top:.5rem;font-size:.8rem}.webrtc-waiting,.webrtc-confirm,.webrtc-transfer,.webrtc-connect,.webrtc-complete{text-align:center;padding:1rem 0}.file-select{margin-top:1rem}.settings-group{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1.5rem;padding:1rem}.settings-group h3{margin-bottom:.75rem;font-size:1rem}.settings-field{margin-bottom:.75rem}.settings-field label{display:block;margin-bottom:.25rem;font-size:.85rem;font-weight:500}.settings-field input[type=text],.settings-field input[type=number],.settings-field input[type=password],.settings-field select{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--fg);width:100%;padding:.5rem;font-family:inherit}.settings-hint{opacity:.6;margin-top:.25rem;font-size:.75rem}.settings-field textarea{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--fg);resize:vertical;box-sizing:border-box;width:100%;padding:.5rem;font-family:monospace;font-size:.85rem}.strategy-item{border-bottom:1px solid var(--border);margin-bottom:1.25rem;padding-bottom:1rem}.strategy-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.strategy-header{display:flex;align-items: center;gap:.5rem}.strategy-header label{font-size:.9rem;font-weight:500}.strategy-reorder{display:flex;gap:.25rem;margin-inline-start:auto}.strategy-reorder-btn{border:1px solid var(--border);border-radius:var(--radius);color:var(--fg);cursor:pointer;background:0 0;padding:.15rem .5rem;font-size:.85rem;line-height:1}.strategy-reorder-btn:disabled{opacity:.3;cursor:not-allowed}.strategy-reorder-btn:hover:not(:disabled){background:var(--bg-surface)}.strategy-relays{margin-top:.5rem;padding-inline-start:1.5rem}.strategy-relays label{display:block;margin-bottom:.25rem;font-size:.8rem;font-weight:500}.strategy-relays textarea{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--fg);resize:vertical;box-sizing:border-box;width:100%;padding:.5rem;font-family:monospace;font-size:.8rem}.strategy-reset-btn{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--fg);cursor:pointer;padding:.5rem 1rem;font-size:.85rem}.strategy-reset-btn:hover{opacity:.8}.turn-server-item{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);margin-top:.5rem;padding:.75rem}.turn-credentials{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.5rem}.turn-remove-btn{border:1px solid var(--border);border-radius:var(--radius);color:var(--fg);cursor:pointer;opacity:.7;background:0 0;margin-top:.5rem;padding:.25rem .5rem;font-size:.8rem}.turn-remove-btn:hover{opacity:1}.turn-add-btn{background:var(--bg-surface);border:1px dashed var(--border);border-radius:var(--radius);color:var(--fg);cursor:pointer;width:100%;margin-top:.5rem;padding:.5rem 1rem;font-size:.85rem}.turn-add-btn:hover{border-color:var(--accent)}.dialog{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);overflow:auto;max-width:min(520px,100vw - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:20px;box-shadow:0 8px 32px #00000040}.dialog::backdrop{background:#0006}.dialog h2{margin:0 0 12px;font-size:1.2rem}.dialog .hint{color:var(--muted);font-size:.9rem}.dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items: center;gap:8px;margin-top:16px}.dialog-actions button{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;min-height:32px;padding:4px 12px}.dialog-actions button:hover{border-color:var(--accent)}.dialog-actions button.primary{background:var(--accent);color:var(--accent-contrast);border-color:var(--accent)}.mono{font-family:ui-monospace,monospace}.about-dialog{max-width:min(40rem,100vw - 32px)}.about-dialog a{color:var(--accent)}.about-head{display:flex;align-items: center;gap:12px;margin-bottom:12px}.about-name{font-size:1.15rem;font-weight:600}.about-logo{border-radius:12px;flex:none}.about-body{display:flex;flex-wrap:wrap;align-items: flex-start;gap:16px}.about-facts{display:grid;grid-template-columns:auto 1fr;flex:16rem;gap:4px 12px}.about-facts dt{color:var(--muted)}.about-qr-figure{text-align:center;flex:none;max-width:180px;margin-inline-start:auto;margin-inline-end:auto}.about-qr{display:block;image-rendering:pixelated;background:#fff;border-radius:4px;margin:0 auto 4px;padding:4px}button.qr-zoom{display:block;cursor:zoom-in;background:0 0;border:0;border-radius:4px;margin:0 auto 4px;padding:0}button.qr-zoom .about-qr{margin:0}.qr-full{color:#000;background:#fff;border:0;width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:16px}.qr-full[open]{display:flex;flex-direction:column;justify-content:center;align-items: center;gap:12px}.qr-full-image{image-rendering:pixelated;cursor:zoom-out;width:min(80vw,75vh);height:auto}.qr-full-text{word-break:break-all;text-align:center;max-width:90vw;font-family:ui-monospace,monospace;font-size:.9rem}.qr-full button.primary{color:#fff;border-radius:var(--radius-sm);cursor:pointer;background:#1f5fbf;border:1px solid #1f5fbf;min-height:32px;padding:4px 12px}.about-qr-figure .mono{word-break:break-all}.about-links{display:flex;list-style:none;flex-wrap:wrap;gap:4px 16px;margin:16px 0 8px}.about .hint+.hint{margin-top:8px}.about-dialog .dialog-actions .hint{margin-inline-end:auto}.section-divider{border-top:1px solid var(--border);max-width:480px;margin:1.5rem auto}.scanner-setup{text-align:center;padding:2rem 0}.scanner-setup p{margin-bottom:1rem}.scanner-active{display:flex;flex-direction:column;align-items: center}.scanner-info{display:flex;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;gap:.5rem 1.5rem;width:100%;margin-bottom:1rem;padding:.75rem 1rem;font-size:.85rem}.scanner-param{display:flex;align-items: center;gap:.5rem}.scanner-param label{white-space:nowrap;font-weight:500}.scanner-param select{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--fg);padding:.25rem .5rem;font-family:inherit;font-size:.85rem}.param-label{white-space:nowrap;font-weight:500}.param-value{opacity:.85}.scanner-result{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;margin-bottom:1rem;padding:1rem}.scanner-result h3{text-transform:uppercase;opacity:.7;margin-bottom:.5rem;font-size:.9rem}.result-content{margin-bottom:.75rem}.result-link{color:var(--accent);word-break:break-all}.result-text{white-space:pre-wrap;word-break:break-all;background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:.5rem;font-size:.9rem}.copy-btn{background:var(--accent);color:var(--accent-contrast);border-radius:var(--radius);cursor:pointer;border:none;padding:.4rem 1rem;font-size:.85rem}.copy-btn:hover{background:var(--accent-hover)}.creator-content{max-width:600px;margin:0 auto}.creator-input{margin-bottom:1rem}.creator-input label{display:block;margin-bottom:.25rem;font-weight:500}.creator-textarea{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);color:var(--fg);resize:vertical;width:100%;padding:.75rem;font-family:inherit;font-size:.95rem;line-height:1.5}.creator-params{display:flex;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;gap:.75rem;margin-bottom:1rem;padding:.75rem 1rem}.creator-param{display:flex;align-items: center;gap:.5rem}.creator-param label{white-space:nowrap;font-size:.85rem;font-weight:500}.creator-param select,.creator-param input[type=number]{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--fg);padding:.25rem .5rem;font-family:inherit;font-size:.85rem}.creator-param input[type=number]{width:5rem}.creator-capacity{display:flex;align-items: center;gap:.5rem;width:100%;font-size:.85rem}.over-capacity{color:var(--danger);font-weight:600}.creator-placeholder{text-align:center;opacity:.5;padding:3rem 1rem}.download-action{margin-top:0}.url-break{overflow-wrap:anywhere;user-select:all}.cimbar-controls{display:flex;flex-wrap:wrap;justify-content:center;align-items: center;gap:1rem;margin-bottom:1rem}.cimbar-controls label{display:flex;align-items: center;gap:.5rem}.audio-controls{display:flex;flex-wrap:wrap;justify-content:center;align-items: center;gap:1rem;margin:.75rem 0}.audio-controls label{display:flex;align-items: center;gap:.5rem}.audio-advanced{margin:.5rem 0}.audio-hint{border-left:3px solid var(--warning);background:var(--warning-bg);border-radius:var(--radius-sm);padding:.5rem .75rem;font-size:.9rem}.audio-level{display:flex;flex-wrap:wrap;justify-content:center;align-items: center;gap:.75rem;margin:1rem 0}.audio-level label{display:flex;align-items: center;gap:.5rem}.audio-level meter{width:min(16rem,60vw);height:1rem}.audio-signal{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.2rem .6rem;font-size:.85rem}.audio-signal.detected{border-color:var(--success);background:var(--success-bg);color:var(--success);font-weight:600}.audio-password.required{border:2px solid var(--warning);border-radius:var(--radius);background:var(--warning-bg);padding:.75rem}.audio-password-title{text-align:center;width:100%;margin:0;font-weight:600}.audio-session-code{display:flex;flex-direction:column;align-items: center;gap:.25rem;margin:1rem 0}.audio-session-code-value{letter-spacing:.3em;font-variant-numeric:tabular-nums;font-size:2.5rem;font-weight:700}.audio-session-members{display:flex;list-style:none;flex-wrap:wrap;justify-content:center;gap:.5rem;padding:0}.audio-session-members li{border:2px solid;border-radius:999px;padding:.2rem .6rem;font-weight:600}.audio-session-members li.away{opacity:.5}.audio-session-rooms{list-style:none;padding:0}.audio-session-rooms li{display:flex;border-bottom:1px solid var(--border);justify-content:space-between;align-items: center;gap:1rem;padding:.5rem 0}.audio-session-log{list-style:none;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-height:8rem;max-height:50vh;margin:1rem 0;padding:.5rem}.audio-session-log li{overflow-wrap:anywhere;white-space:pre-wrap;margin:.35rem 0}.audio-session-log li.mine{text-align:end}.audio-session-log li.system{color:var(--muted);text-align:center;font-style:italic}.audio-session-log .delivery{color:var(--muted);font-size:.85em}.audio-session-input{display:flex;flex-direction:column;gap:.5rem;width:100%}.audio-session-textarea{box-sizing:border-box;resize:vertical;width:100%;min-height:5.5rem;font-size:1rem;line-height:1.4}.audio-session-input-bar{display:flex;justify-content:space-between;align-items: center;gap:.75rem}.audio-tap-start{display:block;width:100%;margin:1rem 0;padding:1.25rem;font-size:1.2rem}.cimbar-canvas-wrap{display:flex;background:#fff;justify-content:center;padding:.5rem}.cimbar-canvas{display:block;background:#fff;width:min(100%,80vh);max-height:80vh}.cimbar-camera{position:relative;overflow:hidden;aspect-ratio:1;border:3px solid var(--border);border-radius:var(--radius);background:#000;width:min(100%,100dvh - 11rem);margin:1rem auto}.cimbar-camera.detected{border-color:var(--success)}.cimbar-camera video{object-fit:cover;display:block;width:100%;height:100%}.share-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:1rem}.transfer-summary{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);margin:1rem 0;padding:.75rem}.transfer-summary h4{margin-bottom:.5rem}.file-preview{background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;text-align:center;margin-top:1rem}.file-preview img,.file-preview-media video{display:block;object-fit:contain;max-width:100%;max-height:50vh;margin:0 auto}.file-preview-audio{display:flex;justify-content:center;align-items: center;padding:1.5rem}.file-preview-audio audio{width:100%;max-width:400px}.file-preview-pdf{width:100%;height:60vh;min-height:400px}.file-preview-pdf object{border:none;width:100%;height:100%}.file-preview-text{text-align:left;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem}.file-preview-text pre{overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;max-height:40vh}.file-preview-markdown{text-align:left;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem}.file-preview-markdown h1,.file-preview-markdown h2,.file-preview-markdown h3,.file-preview-markdown h4,.file-preview-markdown h5,.file-preview-markdown h6,.file-preview-markdown p,.file-preview-markdown ul,.file-preview-markdown ol,.file-preview-markdown blockquote,.file-preview-markdown pre{margin:.5rem 0}.file-preview-markdown ul,.file-preview-markdown ol{padding-left:1.5rem}.file-preview-markdown blockquote{border-left:3px solid var(--accent);opacity:.85;padding-left:.75rem}.file-preview-vcard{text-align:left;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.vcard-heading{display:flex;border-bottom:1px solid var(--border);align-items: center;gap:.7rem;padding-bottom:.8rem}.vcard-heading strong,.vcard-heading small{display:block}.vcard-heading small{opacity:.65;margin-top:.15rem}.vcard-avatar{display:grid;background:color-mix(in srgb,var(--accent)18%,var(--bg));border-radius:50%;place-items: center;width:2.6rem;height:2.6rem;font-size:1.35rem}.file-preview-vcard dl{margin:.7rem 0}.file-preview-vcard dl>div{display:grid;grid-template-columns:minmax(6rem,30%)1fr;gap:.7rem;padding:.35rem 0}.file-preview-vcard dt{opacity:.65;font-size:.78rem;font-weight:600}.file-preview-vcard dd{white-space:pre-wrap;overflow-wrap:anywhere}.vcard-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.vcard-actions .share-action{text-decoration:none;padding:.45rem .7rem}.share-status{opacity:.75;margin-top:.6rem;font-size:.82rem}.file-frontmatter{overflow:hidden;border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);background:color-mix(in srgb,var(--bg)72%,var(--bg-surface));margin:-.1rem 0 1.1rem;font-size:.9rem}.file-frontmatter-heading{border-bottom:1px solid var(--border);color:var(--accent);letter-spacing:.04em;text-transform:uppercase;padding:.45rem .7rem;font-size:.78rem;font-weight:700}.file-frontmatter table{border-collapse:collapse;width:100%}.file-frontmatter th,.file-frontmatter td{border-bottom:1px solid color-mix(in srgb,var(--border)65%,transparent);text-align:left;vertical-align:top;overflow-wrap:anywhere;padding:.45rem .7rem}.file-frontmatter tr:last-child th,.file-frontmatter tr:last-child td{border-bottom:0}.file-frontmatter th{color:var(--fg);width:30%;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;font-weight:600}.file-frontmatter td{color:var(--fg);opacity:.9}.file-frontmatter-empty{opacity:.5}.share-action{background:var(--bg);border:1px solid var(--accent);color:var(--accent)}.share-action:hover{background:var(--accent);color:var(--accent-contrast)}.lang-toggle{display:flex;gap:.25rem;margin-inline-start:auto}.lang-btn{border:1px solid var(--border);border-radius:var(--radius);color:var(--fg);cursor:pointer;opacity:.6;background:0 0;padding:.25rem .6rem;transition:opacity .15s,background .15s;font-size:.8rem;font-weight:500}.lang-btn:hover{opacity:1;background:var(--bg-surface)}.lang-btn.active{opacity:1;background:var(--accent);color:var(--accent-contrast);border-color:var(--accent)}.guide-content{max-width:700px;margin:0 auto;line-height:1.7}.guide-content h1{border-bottom:1px solid var(--border);margin:1.5rem 0 .75rem;padding-bottom:.5rem;font-size:1.5rem}.guide-content h2{margin:1.5rem 0 .5rem;font-size:1.2rem}.guide-content h3{margin:1rem 0 .5rem;font-size:1.05rem}.guide-content p{margin:.5rem 0}.guide-content ul,.guide-content ol{margin:.5rem 0;padding-inline-start:1.5rem}.guide-content li{margin:.25rem 0}.guide-content a{color:var(--accent)}.guide-content hr{border:none;border-top:1px solid var(--border);margin:1.5rem 0}.guide-content strong{font-weight:600}.guide-content .mermaid{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center;overflow-x:auto;margin:1.5rem auto;padding:1rem}.guide-content .mermaid svg{max-width:100%;height:auto}.guide-content pre{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto;margin:1rem 0;padding:1rem;font-size:.9rem}.guide-content code{font-family:ui-monospace,monospace;font-size:.9em}.guide-content :not(pre)>code{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:0 4px}.guide-content h4{margin:1rem 0 .5rem;font-size:1rem}.guide-content table{border-collapse:collapse;display:block;overflow-x:auto;margin:1rem 0;font-size:.9rem}.guide-content th,.guide-content td{border:1px solid var(--border);text-align:start;padding:4px 10px}.guide-content th{background:var(--bg)}.guide-content td:first-child{white-space:nowrap}.guide-content blockquote{border-inline-start:4px solid var(--accent);color:var(--muted);margin:1rem 0;padding:.25rem 1rem}.docs-layout{display:grid;grid-template-columns:13rem minmax(0,1fr);align-items: start;gap:2rem}.docs-nav{position:sticky;top:calc(var(--header-h) + 16px);font-size:.9rem}.docs-nav-group+.docs-nav-group{margin-top:1rem}.docs-nav-title{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:.25rem;font-size:.75rem;font-weight:600}.docs-nav ul{list-style:none}.docs-nav a{display:block;border-radius:0 var(--radius-sm)var(--radius-sm)0;color:var(--text);text-decoration:none;border-inline-start:3px solid #0000;padding:4px 8px}.docs-nav a:hover{color:var(--accent)}.docs-nav a[aria-current=page]{border-inline-start-color:var(--accent);background:var(--sel);font-weight:600}.docs-article .guide-content{margin:0}.docs-article [id]{scroll-margin-top:calc(var(--header-h) + 16px)}.docs-article .guide-content>h1:first-child{margin-top:0}.docs-lang-note{color:var(--muted);margin-bottom:.5rem;font-size:.85rem}.docs-source{border-top:1px solid var(--border);margin-top:2rem;padding-top:1rem;font-size:.85rem}.docs-source a,.docs-index a{color:var(--accent)}.docs-intro{color:var(--muted);margin-bottom:1.5rem}.docs-index h3{margin:1.5rem 0 .75rem;font-size:1rem}.docs-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.docs-index a.docs-card{display:flex;background:var(--surface);border:1px solid var(--border);border-inline-start:6px solid var(--accent);border-radius:var(--radius);color:var(--text);text-decoration:none;flex-direction:column;gap:.25rem;padding:14px 16px}.docs-index a.docs-card:hover{border-color:var(--accent);box-shadow:var(--shadow)}.docs-card-title{font-weight:600}.docs-card-desc{color:var(--muted);font-size:.85rem}.docs-lang{color:var(--muted);border:1px solid var(--border);border-radius:999px;align-self: flex-start;padding:0 6px;font-size:.7rem}@media (max-width:760px){.docs-layout{grid-template-columns:1fr;gap:1rem}.docs-nav{position:static;display:flex;border-bottom:1px solid var(--border);flex-wrap:wrap;gap:.5rem 1.5rem;padding-bottom:.75rem}.docs-nav-group+.docs-nav-group{margin-top:0}}.content-type-toggle{display:flex;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;gap:0;margin-bottom:1rem}.toggle-option{background:var(--bg-surface);color:var(--fg);cursor:pointer;border:none;flex:1;padding:.5rem 1rem;transition:background .15s,color .15s;font-size:.9rem;font-weight:500}.toggle-option:first-child{border-inline-end:1px solid var(--border)}.toggle-option.active{background:var(--accent);color:var(--accent-contrast)}.toggle-option:hover:not(.active){background:var(--border)}.text-input-area{margin-bottom:.5rem}.text-input-textarea{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);color:var(--fg);resize:vertical;white-space:pre-wrap;box-sizing:border-box;width:100%;min-height:8rem;padding:.75rem;font-family:inherit;font-size:.95rem}.text-input-textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.text-char-count{text-align:end;opacity:.6;margin-top:.25rem;font-size:.8rem}.text-result-view{text-align:start}.text-result-content{overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);max-height:20rem;margin-bottom:.75rem}.text-result-pre{white-space:pre-wrap;word-break:break-word;color:var(--fg);margin:0;padding:.75rem;font-family:inherit;font-size:.95rem}.text-result-actions{display:flex;flex-wrap:wrap;gap:.5rem}.collab-view{--collab-width:max(100%,min(100vw - 3rem,1400px));width:var(--collab-width);margin-inline:calc((100% - var(--collab-width))/2)}.collab-editor{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);color:var(--fg);resize:vertical;white-space:pre-wrap;box-sizing:border-box;width:100%;padding:.75rem;font-family:inherit;font-size:.95rem}.collab-editor:focus{outline:2px solid var(--accent);outline-offset:-1px}.char-count{text-align:end;opacity:.6;margin-top:.25rem;font-size:.8rem}.char-count--limit{color:var(--danger);opacity:1}.template-selector{margin-bottom:1rem}.structured-form{display:flex;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:.75rem;margin-bottom:1rem;padding:1rem}.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media (max-width:480px){.form-row-2{grid-template-columns:1fr}}.creator-input-field{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--fg);box-sizing:border-box;width:100%;padding:.5rem .75rem;font-family:inherit;font-size:.9rem}.checkbox-param label{display:flex;cursor:pointer;align-items: center;gap:.5rem}.structured-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:1rem;padding:1.25rem}.card-header{display:flex;justify-content:space-between;align-items: center;margin-bottom:1rem}.card-badge{background:var(--accent);color:var(--accent-contrast);border-radius:999px;padding:.25rem .6rem;font-size:.8rem;font-weight:600}.hidden-badge{background:var(--muted)}.wifi-ssid{margin:0 0 .5rem;font-size:1.3rem;font-weight:700}.wifi-security-tag{opacity:.8;margin-bottom:.75rem;font-size:.85rem}.wifi-password-box{display:flex;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);align-items: center;gap:.5rem;padding:.5rem .75rem;font-family:monospace;font-size:1rem}.password-text{flex:1;font-weight:700}.icon-btn{cursor:pointer;background:0 0;border:none;padding:.2rem;font-size:1.1rem}.icon-btn-text{color:var(--accent);cursor:pointer;text-decoration:underline;background:0 0;border:none;padding:.25rem .5rem;font-size:.85rem}.contact-profile{display:flex;align-items: center;gap:1rem;margin-bottom:1rem}.contact-avatar{background:var(--accent);color:var(--accent-contrast);display:flex;border-radius:50%;justify-content:center;align-items: center;width:48px;height:48px;font-size:1.2rem;font-weight:700}.contact-name{margin:0 0 .25rem;font-size:1.2rem}.contact-org{opacity:.75;font-size:.85rem}.contact-fields{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;font-size:.9rem}.contact-field{display:flex;gap:.5rem}.field-label{opacity:.7;font-weight:500}.field-value{color:var(--fg);font-weight:500}.card-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.card-toggle-row{text-align:end;margin-bottom:1rem}.modal-overlay{position:fixed;display:flex;z-index:1000;background:#0009;justify-content:center;align-items: center;padding:1rem;inset:0}.modal-container{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:420px;padding:1.5rem;box-shadow:0 10px 25px #0003}.print-sign-card{color:#111827;text-align:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:2rem;box-shadow:0 4px 12px #00000014}.sign-header h3{color:#111827;margin:0 0 .25rem;font-size:1.6rem}.sign-subtitle{color:#4b5563;margin-bottom:1.5rem;font-size:.85rem}.sign-qr-box{display:flex;justify-content:center;margin-bottom:1.5rem}.sign-qr-img{border:1px solid #e5e7eb;border-radius:8px;width:200px;height:200px}.sign-details{display:flex;text-align:start;background:#f9fafb;border-radius:8px;flex-direction:column;gap:.5rem;padding:.75rem 1rem;font-size:.95rem}.sign-detail-row{display:flex;justify-content:space-between}.sign-label{color:#6b7280}.sign-value{color:#111827}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.25rem}.encrypted-badge{background:var(--warning);color:#fff}.locked-hint{opacity:.85;margin-bottom:1rem;font-size:.9rem}.password-input-wrapper{position:relative;display:flex;align-items: center}.password-input-wrapper input{padding-right:2.5rem}.toggle-pass-btn{position:absolute;cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:1.1rem;top:50%;right:.5rem;transform:translateY(-50%)}.nearby-devices-card{margin-bottom:1.5rem}.nearby-title{display:flex;align-items: center;gap:.5rem;margin:0;font-size:1.1rem}.peers-list{display:flex;flex-direction:column;gap:.75rem;margin-top:.75rem}.peer-item{display:flex;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items: center;padding:.6rem .8rem}.peer-info{display:flex;align-items: center;gap:.75rem}.peer-icon{font-size:1.4rem}.peer-details{display:flex;flex-direction:column;gap:.15rem}.peer-name{font-size:.95rem}.peer-status-badge{color:var(--success);font-size:.75rem}.peer-send-btn{padding:.35rem .8rem;font-size:.85rem}.offer-card h3{margin-top:0;margin-bottom:.5rem}.offer-hint{opacity:.9;margin-bottom:1.25rem;font-size:.95rem}@media print{body *{visibility:hidden}.modal-overlay,.print-modal-container,.print-sign-card,.print-sign-card *{visibility:visible}.modal-overlay{position:absolute;background:0 0;width:100%;padding:0;top:0;left:0}.modal-container{box-shadow:none;border:none;width:100%;max-width:100%}.no-print{display:none!important}}.fido-explanation{color:var(--muted);margin-bottom:.75rem;font-size:.9rem}.fido-warning,.fido-expired{border-radius:var(--radius-sm);margin-top:.75rem;padding:.5rem .75rem;font-size:.85rem}.fido-warning{background:var(--warning-bg);color:var(--text);border-inline-start:4px solid var(--warning)}.fido-expired{background:var(--danger-bg);color:var(--danger)}.info-row{display:flex;flex-wrap:wrap;gap:.25rem .75rem;margin-bottom:.35rem}.info-label{color:var(--muted);min-width:7rem}a.start-btn{display:block;text-align:center;text-decoration:none}.paste-btn{display:inline-block;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font:inherit;padding:.4rem .75rem}.paste-btn:hover:not(:disabled){border-color:var(--accent)}.paste-btn:disabled{opacity:.5;cursor:default}.paste-toolbar{display:flex;flex-wrap:wrap;align-items: center;gap:.5rem;margin:.5rem 0}.paste-code-input{letter-spacing:.08em;text-transform:uppercase;font-family:ui-monospace,monospace}.paste-board-header{display:flex;flex-wrap:wrap;align-items: center;gap:.5rem .75rem}.paste-board-header .stop-btn{display:inline-block;width:auto;padding:.4rem .75rem}.paste-code{letter-spacing:.08em;direction:ltr;unicode-bidi:isolate;font-size:1.1rem;font-weight:700}.paste-qr{text-align:center;margin:1rem 0}.paste-qr img{image-rendering:pixelated;background:#fff;width:min(280px,80vw)}.paste-export,.paste-consent{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);display:flex;flex-direction:column;gap:.5rem;margin:.75rem 0;padding:.75rem}.paste-ephemeral{border-inline-start:3px solid var(--warning);padding-inline-start:.5rem}.paste-composer{display:flex;flex-direction:column;gap:.25rem;margin:1rem 0}.paste-textarea{box-sizing:border-box;resize:vertical;width:100%;min-height:8rem;font-family:ui-monospace,monospace;font-size:.95rem;line-height:1.4}.paste-attach{margin-inline-start:auto}.paste-pending-files{list-style:none;margin:0;padding:0}.paste-pending-files li{display:flex;border-bottom:1px solid var(--border);overflow-wrap:anywhere;flex-wrap:wrap;align-items: center;gap:.25rem .5rem;padding:.35rem 0}.paste-warning{border-radius:var(--radius-sm);background:var(--warning-bg);color:var(--text);margin:.25rem 0;padding:.35rem .5rem;font-size:.9em}.paste-list{display:flex;flex-direction:column;gap:.75rem}.paste-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);overflow-wrap:anywhere;margin:.75rem 0;padding:.75rem}.paste-card.own{border-inline-start:4px solid var(--accent)}.paste-card-header{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .5rem}.paste-author{font-weight:700}.paste-dot{display:inline-block;border-radius:50%;width:.6rem;height:.6rem;margin-inline-end:.3rem}.paste-fp{color:var(--muted);direction:ltr;unicode-bidi:isolate}.paste-badge{background:var(--sel);border-radius:999px;padding:0 .4rem;font-size:.8em}.paste-badge.warn{background:var(--warning-bg);color:var(--warning);font-weight:600}.paste-times{color:var(--muted);flex-basis:100%;font-size:.85em}.paste-source{white-space:pre-wrap;overflow-wrap:anywhere;overflow:auto;background:var(--bg);border-radius:var(--radius-sm);unicode-bidi:plaintext;max-height:60vh;padding:.5rem;font-size:.9rem}.paste-rendered{overflow:auto;unicode-bidi:plaintext;max-height:70vh}.paste-rendered h1{font-size:1.3rem}.paste-rendered h2{font-size:1.15rem}.paste-rendered h3,.paste-rendered h4,.paste-rendered h5,.paste-rendered h6{font-size:1rem}.paste-rendered img{max-width:100%;height:auto}.paste-rendered pre{overflow:auto;background:var(--bg);border-radius:var(--radius-sm);padding:.5rem}.paste-rendered table{border-collapse:collapse}.paste-rendered th,.paste-rendered td{border:1px solid var(--border);padding:.2rem .4rem}.paste-rendered blockquote{border-inline-start:3px solid var(--border);color:var(--muted);margin-inline-start:0;margin-inline-end:0;padding-inline-start:.75rem}.paste-rendered a.paste-att,.paste-rendered a.paste-remote,.paste-rendered .paste-missing{display:inline-block;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:0 .4rem;font-size:.9em}.paste-rendered .paste-missing{color:var(--muted);cursor:default;border-style:dashed}.paste-preview{border:1px dashed var(--border);border-radius:var(--radius-sm);min-height:8rem;padding:.5rem}.paste-attachments,.paste-att-details{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.paste-chip{border:1px solid var(--border);border-radius:var(--radius-sm);padding:.4rem .5rem}.paste-chip.risky{border-color:var(--warning)}.paste-chip-row{display:flex;flex-wrap:wrap;align-items: center;gap:.25rem .5rem}.paste-chip-name{unicode-bidi:isolate;font-weight:600}.paste-inline-img{display:block;max-width:100%;height:auto;max-height:50vh;margin-bottom:.35rem}.paste-video{max-width:100%}.paste-proof{border-top:1px solid var(--border);margin-top:.75rem;padding-top:.5rem;font-size:.9em}.paste-proof-caption{font-size:.85em}.paste-downloads summary{cursor:pointer}.paste-downloads[open]{display:flex;flex-wrap:wrap;gap:.35rem}.paste-proof-form label{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.5rem}.paste-checks{padding-inline-start:1.2rem}.paste-checks li{margin:.25rem 0}.paste-proof-status{margin:.25rem 0;padding-inline-start:1.2rem}.file-preview-markdown a.paste-remote,.file-preview-markdown .paste-missing{display:inline-block;border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 .4rem;font-size:.9em}.file-preview-markdown .paste-missing{color:var(--muted);border-style:dashed}
