@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@layer theme{:root,:host{--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.flex{display:flex}.h-full{height:100%}.min-h-full{min-height:100%}.flex-col{flex-direction:column}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--background:#061017;--foreground:#e7faff;--muted:#9fb5c0;--line:#74e8f33d;--panel:#050f16c7;--accent:#16a394;--accent-dark:#7cf4ff;--danger:#ff7a7a}*{box-sizing:border-box}body{background:var(--background);min-height:100vh;color:var(--foreground);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}button,input{font:inherit}.app-shell{isolation:isolate;background:radial-gradient(circle at 50% 45%,#7cf4ff3d,#0000 8%),radial-gradient(circle at 50% 18%,#16a39447,#0000 18%),linear-gradient(90deg,#0000 0 14%,#7cf4ff24 14.2% 14.4%,#0000 14.7% 85.3%,#7cf4ff24 85.6% 85.8%,#0000 86%),linear-gradient(115deg,#0000 0 27%,#7cf4ff2e 27.2% 27.4%,#0000 27.8% 72.2%,#7cf4ff2e 72.6% 72.8%,#0000 73%),linear-gradient(245deg,#0000 0 28%,#7cf4ff21 28.2% 28.4%,#0000 28.8% 71.2%,#7cf4ff21 71.6% 71.8%,#0000 72%),radial-gradient(#102f39 0%,#07131b 48%,#02070b 100%);place-items:center;width:100%;min-height:100vh;padding:32px;display:grid;position:relative;overflow:hidden}.app-shell:before,.app-shell:after{content:"";z-index:0;pointer-events:none;position:absolute;inset:-18%}.app-shell:before{opacity:.72;transform-origin:bottom;background:linear-gradient(90deg,#0000 0 49.7%,#7cf4fff2 49.85% 50.15%,#0000 50.3% 100%),repeating-linear-gradient(90deg,#7cf4ff61 0 1px,#0000 1px 92px),repeating-linear-gradient(0deg,#7cf4ff57 0 1px,#0000 1px 78px),linear-gradient(90deg,#0000 0 7%,#7cf4ffe6 7.2% 7.6%,#0000 7.9% 92.1%,#7cf4ffe6 92.4% 92.8%,#0000 93%),linear-gradient(0deg,#0000 0 41%,#7cf4ffcc 41.2% 41.6%,#0000 42% 64%,#7cf4ff80 64.2% 64.5%,#0000 65%);border-top:1px solid #7cf4ffb3;height:78%;animation:4.8s linear infinite grid-stream;inset:auto -18% -38%;transform:perspective(760px)rotateX(62deg);box-shadow:0 -18px 70px #7cf4ff42,inset 0 26px 60px #7cf4ff1f;-webkit-mask-image:linear-gradient(#0000 0%,#000 18% 78%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 18% 78%,#0000 100%)}.app-shell:after{filter:drop-shadow(0 0 12px #7cf4ff6b);opacity:.86;background:linear-gradient(90deg,#0000 0 18%,#7cf4ffc7 18.1% 18.3%,#0000 18.5% 81.5%,#7cf4ffc7 81.7% 81.9%,#0000 82.1%),linear-gradient(0deg,#0000 0 36%,#7cf4ff85 36.1% 36.3%,#0000 36.6% 66%,#7cf4ff6b 66.1% 66.3%,#0000 66.6%),repeating-linear-gradient(90deg,#0000 0 98px,#7cf4ff3d 99px 100px,#0000 101px 176px),linear-gradient(90deg,#0000 0 42%,#7cf4ffe6 44% 48%,#0000 50% 100%) 0 22%/360px 2px,linear-gradient(90deg,#0000 0 24%,#16a394e6 26% 31%,#0000 33% 100%) 0 63%/420px 2px,linear-gradient(#0000 0 28%,#7cf4ff9e 30% 36%,#0000 38% 100%) 50% 0/2px 260px,radial-gradient(circle,#7cf4fff2 0 4px,#7cf4ff40 5px 12px,#0000 13px) 50% 56%/260px 180px,radial-gradient(circle,#7cf4ffc7 0 2px,#0000 3px) 0 0/140px 96px;animation:4.2s linear infinite packet-flow,3.4s linear infinite data-rain,2.8s ease-in-out infinite node-pulse;-webkit-mask-image:radial-gradient(#000 0 62%,#0000 86%);mask-image:radial-gradient(#000 0 62%,#0000 86%)}.home-panel,.room-layout,.receive-panel{z-index:1;background:var(--panel);border:1px solid var(--line);-webkit-backdrop-filter:blur(18px)saturate(1.25);backdrop-filter:blur(18px)saturate(1.25);border-radius:8px;width:min(100%,980px);position:relative;box-shadow:0 28px 80px #0000006b,0 0 0 1px #7cf4ff1a,0 0 48px #16a39429}.home-panel{padding:28px}.brand-row{color:var(--accent-dark);align-items:center;gap:10px;margin-bottom:48px;font-weight:700;display:flex}.home-grid{grid-template-columns:1.1fr .9fr;align-items:start;gap:48px;display:grid}.intro h1,.room-main h1,.receive-panel h1{letter-spacing:0;max-width:680px;margin:0;font-size:clamp(2rem,4vw,4.4rem);line-height:1.02}.intro p,.muted{color:var(--muted);line-height:1.7}.action-stack,.room-main,.receive-panel{flex-direction:column;gap:18px;display:flex}.primary-action,.secondary-action,.file-picker,.join-row button{cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:10px;min-height:48px;font-weight:700;text-decoration:none;display:inline-flex}.primary-action{background:var(--accent);color:#fff;width:100%;padding:0 18px}.primary-action:hover{background:var(--accent-dark)}.primary-action:disabled,.disabled-link{opacity:.45;pointer-events:none}.secondary-action{width:100%;color:var(--foreground);background:#7cf4ff1a;border:1px solid #7cf4ff2e;padding:0 16px}.secondary-action span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.join-form{flex-direction:column;gap:8px;font-weight:700;display:flex}.join-row{grid-template-columns:1fr 52px;gap:8px;display:grid}.join-row input{border:1px solid var(--line);text-transform:uppercase;min-width:0;height:52px;color:var(--foreground);background:#02080d85;border-radius:8px;padding:0 14px}.join-row button{color:#fff;background:#07111b;border:1px solid #7cf4ff38}.flow-strip{border:1px solid var(--line);min-height:44px;color:var(--muted);background:#02080d47;border-radius:8px;justify-content:center;align-items:center;gap:10px;font-size:.92rem;display:flex}.developer-credit{border:1px solid var(--line);width:100%;min-height:52px;color:var(--muted);background:#02080d47;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:8px 10px 8px 14px;font-size:.92rem;display:flex}.developer-credit-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.developer-credit-text strong{color:var(--foreground);font-weight:800}.developer-credit-links{flex:none;align-items:center;gap:8px;display:flex}.developer-credit-links a{width:36px;height:36px;color:var(--accent-dark);border:1px solid #7cf4ff2e;border-radius:8px;flex:0 0 36px;place-items:center;line-height:1;text-decoration:none;display:grid}.developer-credit-links svg{width:18px;height:18px;display:block}.developer-credit-links a:hover,.developer-credit-links a:focus-visible{background:#7cf4ff1a;border-color:#7cf4ff7a}.room-layout{grid-template-columns:minmax(0,1fr) 320px;gap:28px;padding:28px;display:grid}.eyebrow{color:var(--accent-dark);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.82rem;font-weight:800}.status-line{min-height:44px;color:var(--muted);align-items:center;gap:10px;display:flex}.status-line span{background:#f59e0b;border-radius:999px;width:11px;height:11px}.status-line[data-ready=true] span{background:#10b981}.file-picker{color:var(--foreground);background:#02080d6b;border:1px dashed #7cf4ff7a;justify-content:flex-start;padding:0 16px}.file-picker span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.file-picker input{display:none}.transfer-progress{flex-direction:column;gap:10px;display:flex}.progress-head{color:var(--muted);justify-content:space-between;font-size:.92rem;display:flex}.transfer-progress-art{filter:drop-shadow(0 0 16px #7cf4ff24);background:radial-gradient(circle at 78% 42%,#7cf4ff29,#0000 28%),linear-gradient(145deg,#7cf4ff14,#02080d57);border:1px solid #7cf4ff33;border-radius:8px;width:100%;height:auto;min-height:132px;padding:14px 10px 6px}.transfer-track,.transfer-bar,.transfer-file rect,.transfer-folder-tab{fill:none;stroke-linecap:round;stroke-linejoin:round}.transfer-track{stroke:#7cf4ff2e;stroke-width:10px}.transfer-bar{stroke:var(--accent-dark);stroke-width:10px;stroke-dasharray:465;transition:stroke-dashoffset .18s}.transfer-dot circle{fill:var(--accent-dark)}.transfer-file,.transfer-dot,.transfer-folder{transform-box:view-box}.transfer-file rect{stroke:var(--accent-dark);stroke-width:7px}.transfer-folder{transform-origin:555px 80px}.transfer-folder-page{fill:#e7faffeb;stroke:var(--accent-dark);stroke-width:4px}.transfer-folder-body{fill:var(--accent)}.transfer-folder-tab{stroke:var(--accent-dark);stroke-width:7px}.transfer-progress[data-active=true] .transfer-file{animation:2.4s cubic-bezier(.4,0,.2,1) infinite slide-file}.transfer-progress[data-active=true] .transfer-dot{animation:2.4s cubic-bezier(.4,0,.2,1) infinite slide-dot}.transfer-progress[data-active=true] .transfer-folder{animation:2.4s ease-in-out infinite folder-pulse}.transfer-caption{color:var(--muted);letter-spacing:.02em;text-align:center;margin:0;font-size:.82rem}.qr-panel{flex-direction:column;align-items:center;gap:14px;display:flex}.qr-box{border:1px solid var(--line);background:#fffffff0;border-radius:8px;place-items:center;width:264px;height:264px;display:grid}.qr-loading{background:#7cf4ff1f;border-radius:8px;width:220px;height:220px}.room-link{overflow-wrap:anywhere;width:100%;color:var(--muted);text-align:center;font-size:.86rem}.receive-panel{max-width:620px;padding:28px}.receive-box{border:1px solid var(--line);min-height:128px;color:var(--muted);text-align:center;background:#02080d47;border-radius:8px;justify-content:center;align-items:center;gap:12px;display:flex}.download-list{grid-template-columns:repeat(auto-fit,minmax(156px,1fr));gap:10px;display:grid}.file-download{min-width:0;min-height:84px;color:var(--foreground);text-align:center;background:linear-gradient(145deg,#7cf4ff24,#16a39414),#02080d61;border:1px solid #7cf4ff3d;border-radius:8px;grid-template-rows:24px minmax(0,1fr);place-items:center;gap:8px;padding:12px;font-size:.86rem;font-weight:700;text-decoration:none;transition:border-color .16s,background .16s,transform .16s;display:grid;position:relative}.file-download:hover,.file-download:focus-visible{background:linear-gradient(145deg,#7cf4ff33,#16a3941f),#02080d7a;border-color:#7cf4ff9e;transform:translateY(-1px)}.file-download span{text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;overflow:hidden}.file-download:after{content:attr(data-file-name);z-index:5;width:max-content;max-width:min(320px,78vw);color:var(--foreground);overflow-wrap:anywhere;pointer-events:none;opacity:0;background:#02080df5;border:1px solid #7cf4ff5c;border-radius:8px;padding:8px 10px;font-size:.78rem;font-weight:700;line-height:1.35;transition:opacity .14s,transform .14s;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%,4px);box-shadow:0 12px 34px #00000061}.file-download:hover:after,.file-download:focus-visible:after{opacity:1;transform:translate(-50%)}.error-text{color:var(--danger);margin:0;line-height:1.5}@keyframes grid-stream{0%{background-position:0 0,0 0,0 0,0 0,0 0}to{background-position:0 0,92px 0,0 78px,0 0,0 78px}}@keyframes packet-flow{0%{background-position:0 0,0 0,0 0,-360px 22%,420px 63%,50% -260px,0 0,0 0}to{background-position:0 0,0 0,176px 0,360px 22%,-420px 63%,50% 260px,260px 180px,140px 96px}}@keyframes data-rain{0%{transform:translateY(-18px)}to{transform:translateY(18px)}}@keyframes node-pulse{0%,to{opacity:.48}50%{opacity:.82}}@keyframes slide-file{0%{opacity:1;transform:translate(0)}60%{opacity:1;transform:translate(380px)}75%,to{opacity:0;transform:translate(380px)}}@keyframes slide-dot{0%,20%{transform:translate(0)}75%,to{transform:translate(465px)}}@keyframes folder-pulse{0%,68%{transform:scale(1)}78%{transform:scale(1.12)}88%{transform:scale(.96)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.app-shell:before,.app-shell:after,.transfer-file,.transfer-dot,.transfer-folder{animation:none}}@media (max-width:760px){.app-shell{place-items:stretch stretch;padding:16px}.home-panel,.room-layout,.receive-panel{width:100%}.home-grid,.room-layout{grid-template-columns:1fr}.brand-row{margin-bottom:28px}.qr-panel{align-items:stretch}.qr-box{width:100%}}
