:root{--bg:#f4f6f9;--panel:#fff;--text:#1b2430;--muted:#667085;--line:#e3e7ee;--brand:#2563eb;--brand-solid:#2563eb;--brand-strong:#1d4ed8;--brand-ink:#1d4ed8;--danger:#dc2626;--danger-strong:#b91c1c;--pending:#f59e0b;--ok:#16a34a;--neutral:#98a2b3;--on-brand:#fff;--radius:10px;--shadow:0 1px 2px #1018280f, 0 4px 16px #1018280f;--hover:#eef2f8;--hover-bg:#f8fafc;--sunken:#f8fafc;--tint:#e6efff;--input-bg:#fff;--icon-bg:#f1f5f9;--btn-hover-line:#cdd4e0;--focus:#bfdbfe;--overlay:#10182873;--drop-tint:#2563eb14;--warn-text:#92400e;--warn-bg:#fef3c7;--warn-line:#fde68a;--danger-tint:#fef2f2;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#14161a;--panel:#1b1e24;--text:#d7dbe2;--muted:#8b93a1;--line:#2a2f38;--brand:#7aa5ff;--brand-solid:#2563eb;--brand-strong:#1d4ed8;--brand-ink:#8ab0ff;--danger:#ef4444;--danger-strong:#b91c1c;--pending:#f59e0b;--ok:#22c55e;--neutral:#6b7280;--on-brand:#fff;--shadow:0 1px 2px #00000073, 0 4px 16px #00000059;--hover:#232730;--hover-bg:#242830;--sunken:#20242c;--tint:#7aa2f729;--input-bg:#13151a;--icon-bg:#242830;--btn-hover-line:#3b424e;--focus:#7aa2f78c;--overlay:#0009;--drop-tint:#7aa2f71f;--warn-text:#fbbf24;--warn-bg:#f59e0b24;--warn-line:#f59e0b66;--danger-tint:#ef444424;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font:14px/1.6 system-ui,-apple-system,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}h1,h2,h3{margin:0 0 8px;line-height:1.3}a{color:var(--brand);text-decoration:none}.shell{flex-direction:column;min-height:100%;display:flex}.topbar{background:var(--panel);border-bottom:1px solid var(--line);z-index:10;align-items:center;gap:24px;height:52px;padding:0 20px;display:flex;position:sticky;top:0}.brand{letter-spacing:.04em;white-space:nowrap;font-weight:700}.brand-sub{color:var(--muted);margin-left:8px;font-size:12px;font-weight:400}.nav{flex:1;gap:4px;display:flex}.nav a{color:var(--text);border-radius:999px;padding:6px 14px}.nav a:hover{background:var(--hover)}.nav a.active{background:var(--tint);color:var(--brand-ink);font-weight:600}.nav-sep{background:var(--line);align-self:center;width:1px;height:20px;margin:0 6px}.account{align-items:center;gap:10px;display:flex}@media (width<=640px){.topbar{gap:10px;padding:0 12px}.brand-sub,.account-name{display:none}.nav{scrollbar-width:none;min-width:0;overflow-x:auto}.nav a{white-space:nowrap;padding:6px 10px}}.account-name{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.main{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:24px 20px 48px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.page h2{font-size:20px}.hint{color:var(--muted);margin:4px 0 16px}.error{color:var(--danger);margin:4px 0}.btn{font:inherit;border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer;border-radius:8px;padding:6px 14px}.btn:hover{border-color:var(--btn-hover-line);background:var(--hover-bg)}.btn:disabled{opacity:.6;cursor:default}.btn.primary{background:var(--brand-solid);border-color:var(--brand-solid);color:var(--on-brand)}.btn.primary:hover{background:var(--brand-strong)}input{font:inherit;border:1px solid var(--line);background:var(--input-bg);width:100%;color:var(--text);border-radius:8px;margin-top:4px;padding:8px 10px}input:focus{outline:2px solid var(--focus);border-color:var(--brand)}label{margin-bottom:14px;font-weight:500;display:block}.login-page{place-items:center;min-height:100%;padding:24px;display:grid}.login-card{width:min(360px,100%);padding:28px 26px}.login-card h1{font-size:20px}.login-card .btn{width:100%;margin-top:4px;padding:9px}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.toolbar h2{margin:0}.toolbar-actions{gap:8px;display:flex}.crumbs{flex-wrap:wrap;align-items:center;gap:2px;display:flex}.crumb{font:inherit;color:var(--brand);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 6px}.crumb:hover:not(:disabled){background:var(--hover)}.crumb.current{color:var(--text);cursor:default;font-weight:600}.crumb-sep{color:var(--muted)}.file-table{border-collapse:collapse;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);width:100%;overflow:hidden}.file-table th,.file-table td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:9px 14px}.file-table th{color:var(--muted);background:var(--sunken);font-size:12px;font-weight:600}.file-table tr:last-child td{border-bottom:0}.file-table tbody tr:hover{background:var(--hover-bg)}.col-name{text-overflow:ellipsis;width:45%;max-width:0;overflow:hidden}.col-size{width:90px}.col-time{width:170px;color:var(--muted)}.col-actions{width:210px}.row-icon{margin-right:8px}.row-thumb{object-fit:cover;vertical-align:-5px;background:var(--icon-bg);border-radius:4px;width:22px;height:22px;margin-right:8px}.badge-remote{color:var(--warn-text);background:var(--warn-bg);border:1px solid var(--warn-line);vertical-align:1px;border-radius:999px;margin-left:8px;padding:1px 6px;font-size:11px;line-height:16px;display:inline-block}.action.busy{color:var(--muted);cursor:default}.preview-thumb{background:var(--icon-bg);border-radius:8px;max-width:min(320px,100%);max-height:320px;margin:0 auto 12px;display:block}.link{font:inherit;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;padding:0}a.link{color:var(--text);text-decoration:none}.link:hover{color:var(--brand)}.action{font:inherit;color:var(--brand);cursor:pointer;background:0 0;border:0;border-radius:6px;margin-right:4px;padding:3px 8px;font-size:13px}.action:hover:not(:disabled){background:var(--hover)}.action.danger{color:var(--danger)}.action.danger:hover:not(:disabled){background:var(--danger-tint)}.action.pinned{background:var(--brand-solid);color:var(--on-brand)}.action.pinned:hover:not(:disabled){background:var(--brand);filter:brightness(.95)}.action:disabled{opacity:.5;cursor:default}.empty{border:1px dashed var(--line);border-radius:var(--radius);text-align:center;color:var(--muted);background:var(--panel);padding:40px 20px}.status-dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:7px;display:inline-block}.status-dot.on{background:var(--ok)}.status-dot.off{background:var(--neutral)}.section-title{margin:22px 0 4px;font-size:16px}.pairing-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.pairing-cards{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin-bottom:18px;display:grid}.pair-card{text-align:center;padding:16px 18px 18px}.pair-card-title{font-weight:600}.pair-card .hint{margin:2px 0 0;font-size:13px}.pair-code{letter-spacing:8px;font-variant-numeric:tabular-nums;margin:12px 0 14px;font-size:34px;font-weight:700}.pair-card-actions{justify-content:center;gap:8px;display:flex}.files-page{position:relative}.drop-overlay{background:var(--drop-tint);border:2px dashed var(--brand);border-radius:var(--radius);pointer-events:none;z-index:5;place-items:center;display:grid;position:absolute;inset:0}.drop-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--brand-ink);padding:16px 22px;font-weight:600}.modal-backdrop{background:var(--overlay);z-index:50;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{width:min(400px,100%);padding:22px 22px 18px}.modal h3{margin-bottom:12px;font-size:16px}.modal-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.btn.danger{background:var(--danger);border-color:var(--danger);color:var(--on-brand)}.btn.danger:hover{background:var(--danger-strong)}.preview-text{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);white-space:pre-wrap;word-break:break-all;max-height:70vh;margin:0;padding:16px 18px;font:13px/1.6 ui-monospace,Cascadia Mono,Consolas,monospace;overflow:auto}.preview-media{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);place-items:center;padding:16px;display:grid}.preview-media img,.preview-media video{max-width:100%;max-height:70vh}.preview-media audio{width:min(480px,100%)}.download-item{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;display:flex}.download-info h3{margin-bottom:2px}.download-info .hint{margin:0}.download-item .btn{text-align:center;flex:none;text-decoration:none}.download-item .btn[aria-disabled=true]{opacity:.6;cursor:default}.public-page{max-width:860px}.share-card{padding:26px 24px}.share-card .btn{width:100%;margin-top:6px;padding:9px}.share-card input{margin-bottom:10px}.share-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.share-head h2{margin-bottom:4px}.share-crumbs{margin-bottom:10px}.modal select{font:inherit;border:1px solid var(--line);background:var(--input-bg);width:100%;color:var(--text);border-radius:8px;margin-top:4px;padding:8px 10px}.modal.wide{width:min(520px,100%)}.boot{min-height:100%;color:var(--muted);place-items:center;display:grid}.public-page{max-width:900px;margin:0 auto}.theme-switch{border:1px solid var(--line);border-radius:999px;gap:2px;padding:2px;display:flex}.theme-switch button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:3px 9px;font-size:12px}.theme-switch button:hover{color:var(--text)}.theme-switch button[aria-pressed=true]{background:var(--tint);color:var(--brand-ink);font-weight:600}.views{flex-direction:column;gap:12px;display:flex}.agent-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.agent-toolbar h2{align-items:center;gap:9px;margin:0;font-size:15px;display:flex}.agent-toolbar .spacer{flex:1}.dot{background:var(--neutral);border-radius:50%;flex:none;width:10px;height:10px}.dot--ok{background:var(--ok)}.dot--pending{background:var(--pending)}.dot--error{background:var(--danger)}.dot--off{background:var(--neutral)}.views .card{padding:14px 16px}.views .card h2{letter-spacing:.05em;color:var(--muted);align-items:center;gap:8px;margin-bottom:12px;font-size:12px;font-weight:600;display:flex}.card__body{flex-direction:column;gap:10px;display:flex}.views .empty{background:0 0;border:0;padding:40px 20px}.views .empty h2{color:var(--text);font-size:17px}.row{align-items:baseline;gap:12px;display:flex}.row__k{width:132px;color:var(--muted);flex:none;font-size:13px}.row__v{word-break:break-word;flex:1;min-width:0}.mono{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:13px}.strong{font-weight:600}.danger{color:var(--danger)}.field{align-items:center;gap:12px;display:flex}label.field{font-weight:400}.field__k{width:104px;color:var(--muted);flex:none;font-size:13px}.field>input:not([type=checkbox]){flex:1;width:auto;min-width:0;margin-top:0}.field>select{font:inherit;border:1px solid var(--line);background:var(--input-bg);color:var(--text);border-radius:8px;flex:1;padding:7px 10px}.field>input[type=checkbox]{flex:none;width:auto;margin-top:0}.field .btn{flex:none}.notice{border:1px solid var(--warn-line);background:var(--warn-bg);color:var(--warn-text);border-radius:8px;align-items:center;gap:10px;margin-bottom:12px;padding:9px 14px;font-size:13px;display:flex}.notice__x{color:inherit;cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:16px;line-height:1}.actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.actions .hint{margin:0}.log{background:var(--input-bg);border:1px solid var(--line);border-radius:var(--radius);color:var(--text);white-space:pre-wrap;word-break:break-all;max-height:60vh;margin:0;padding:14px 16px;font:12px/1.6 ui-monospace,Cascadia Mono,Consolas,monospace;overflow:auto}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;border-bottom:1px solid var(--line);padding:7px 10px;font-size:13px}.table th{color:var(--muted);font-size:12px;font-weight:600}.table tr:last-child td{border-bottom:0}.mapping{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.mapping>input{flex:130px;width:auto;min-width:0;margin-top:0}.mapping>input:first-child{flex:2 190px}.mapping__fetch{color:var(--muted);flex:none;align-items:center;gap:6px;margin:0;font-size:13px;font-weight:400;display:flex}.mapping__fetch input{width:auto;margin-top:0}.btn.ghost{color:var(--muted);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--hover);border-color:var(--line);color:var(--text)}.btn.sm{border-radius:7px;padding:3px 9px;font-size:13px}.modal.picker{width:min(560px,100%)}.picker-crumbs{border:1px solid var(--line);background:var(--input-bg);border-radius:8px;flex-wrap:wrap;align-items:center;gap:2px;margin-bottom:8px;padding:6px 8px;display:flex}.picker-list{border:1px solid var(--line);border-radius:8px;max-height:300px;overflow:auto}.picker-list button{width:100%;font:inherit;text-align:left;border:0;border-bottom:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer;align-items:center;gap:8px;padding:8px 12px;display:flex}.picker-list button:last-child{border-bottom:0}.picker-list button:hover{background:var(--hover)}.picker-empty{text-align:center;color:var(--muted);padding:18px 12px;font-size:13px}.picker-login label{margin-bottom:10px}.picker-login .btn{width:100%;padding:8px}
