.app{flex-direction:column;max-width:720px;min-height:100%;margin:0 auto;padding:2rem 1.25rem 4rem;display:flex}.app-header h1{letter-spacing:-.01em;margin:0;font-size:1.6rem;font-weight:600}.app-header .accent{color:var(--accent)}.tagline{color:var(--muted);margin:.25rem 0 0;font-size:.95rem}.app-main{flex:1;margin-top:2rem}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.5rem}.panel.error{border-color:color-mix(in srgb, var(--danger) 50%, var(--border))}.ok{color:var(--accent-2);margin:0 0 1rem;font-weight:500}.muted{color:var(--muted)}.small{font-size:.85rem}.idcard{grid-template-columns:max-content 1fr;gap:.4rem 1.25rem;margin:0 0 1rem;display:grid}.idcard dt{color:var(--muted);align-self:center;font-size:.85rem}.idcard dd{margin:0}.version-pill{color:var(--muted);background:var(--surface-2);border:1px solid var(--border);cursor:default;border-radius:999px;align-self:flex-start;margin-top:2rem;padding:.15rem .6rem;font-family:ui-monospace,monospace;font-size:.72rem}.app-main>.panel+.panel{margin-top:1rem}.panel-title{margin:0 0 1rem;font-size:1.05rem;font-weight:600}.device-list{flex-direction:column;gap:.15rem;margin:0;padding:0;list-style:none;display:flex}.device-row{border-radius:8px;align-items:center;gap:.75rem;padding:.6rem .5rem;display:flex}.device-row:hover{background:var(--surface-2)}.dot{border-radius:50%;flex:none;width:9px;height:9px}.dot.on{background:var(--accent-2);box-shadow:0 0 6px color-mix(in srgb, var(--accent-2) 70%, transparent)}.dot.off{background:var(--border)}.device-main{flex-direction:column;gap:.1rem;min-width:0;display:flex}.device-name-btn{color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:0;font-weight:500;display:flex}.device-name-btn:hover{color:var(--accent)}.badge{color:var(--accent);background:color-mix(in srgb, var(--accent) 18%, transparent);border-radius:999px;padding:.05rem .45rem;font-size:.68rem;font-weight:500}.device-sub{color:var(--muted);font-size:.8rem}.rename-input{background:var(--bg);border:1px solid var(--accent);color:var(--text);font:inherit;border-radius:6px;width:100%;max-width:240px;padding:.2rem .5rem}.rename-input:focus{outline:none}.tabs{border-bottom:1px solid var(--border);gap:.25rem;margin:1rem 0;display:flex}.tab{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.5rem .9rem;font-weight:500}.tab:hover{color:var(--text)}.tab.on{color:var(--text);border-bottom-color:var(--accent)}.field{margin:0 0 1rem;display:block}.field-label{color:var(--muted);margin-bottom:.35rem;font-size:.85rem;display:block}.field input[type=file],.field select{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);font:inherit;border-radius:8px;padding:.5rem .6rem}.field select:focus,.field input:focus{border-color:var(--accent);outline:none}button.primary{background:var(--accent);color:#fff;font:inherit;cursor:pointer;border:none;border-radius:8px;padding:.55rem 1.1rem;font-weight:500}button.primary:disabled{opacity:.45;cursor:not-allowed}button.ghost{border:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:.35rem .8rem}button.ghost:hover{border-color:var(--accent);color:var(--accent)}.warn{color:var(--amber,#ba7517)}.progress{margin:1rem 0 .5rem}.progress-bar{background:var(--surface-2);border-radius:999px;height:6px;margin-bottom:.35rem;overflow:hidden}.progress-fill{background:var(--accent-2);height:100%;transition:width .15s}.recv-list{flex-direction:column;gap:.15rem;margin:0;padding:0;list-style:none;display:flex}.recv-row{border-radius:8px;justify-content:space-between;align-items:center;gap:.75rem;padding:.6rem .5rem;display:flex}.recv-row:hover{background:var(--surface-2)}.recv-main{flex-direction:column;gap:.1rem;min-width:0;display:flex}.recv-name{font-weight:500}.dropfolder{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;padding:.6rem .75rem;display:flex}.sbadge{vertical-align:middle;border-radius:999px;margin-left:.4rem;padding:.05rem .45rem;font-size:.68rem;font-weight:500}.sbadge.holding{color:var(--amber,#ba7517);background:#ba75172e}.sbadge.delivering{color:var(--accent);background:color-mix(in srgb, var(--accent) 18%, transparent)}.sbadge.delivered{color:var(--accent-2);background:color-mix(in srgb, var(--accent-2) 18%, transparent)}.sbadge.failed{color:var(--danger);background:color-mix(in srgb, var(--danger) 18%, transparent)}.reload-prompt{background:var(--surface-2);border:1px solid var(--border-strong,#3a3a42);z-index:100;border-radius:12px;align-items:center;gap:1rem;max-width:calc(100vw - 2rem);padding:.7rem 1rem;font-size:.9rem;display:flex;position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0006}.reload-actions{flex:none;gap:.5rem;display:flex}.reload-prompt button.primary{padding:.35rem .8rem}:root{--bg:#0a0a0b;--surface:#141417;--surface-2:#1c1c21;--border:#2a2a31;--text:#ececf0;--muted:#9a9aa6;--accent:#7f77dd;--accent-2:#1d9e75;--danger:#e24b4a;--radius:12px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}.mono{font-family:ui-monospace,SF Mono,Fira Code,Menlo,monospace}
