:root{color-scheme:light dark;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--accent: #0a84ff;--accent-hover: #0070e0;--accent-soft: rgba(10, 132, 255, .14);--accent-contrast: #ffffff;--danger: #e5484d;--danger-soft: rgba(229, 72, 77, .12);--warning: #f5a524;--success: #30a46c;--bg: #f5f5f7;--bg-elevated: #ffffff;--bg-sidebar: #ececef;--bg-hover: rgba(0, 0, 0, .05);--bg-selected: rgba(10, 132, 255, .16);--bg-selected-strong: #0a84ff;--text: #1d1d1f;--text-secondary: #6e6e73;--text-tertiary: #a1a1a6;--border: rgba(0, 0, 0, .1);--border-strong: rgba(0, 0, 0, .18);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .08);--shadow-md: 0 4px 16px rgba(0, 0, 0, .12);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .2);--overlay: rgba(0, 0, 0, .35);--folder: #4aa3ff;--radius-sm: 6px;--radius: 10px;--radius-lg: 14px;--toolbar-h: 52px;--sidebar-w: 240px;--row-h: 30px;--row-h-touch: 56px}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--accent-soft: rgba(10, 132, 255, .22);--bg: #1c1c1e;--bg-elevated: #2c2c2e;--bg-sidebar: #232325;--bg-hover: rgba(255, 255, 255, .06);--bg-selected: rgba(10, 132, 255, .28);--text: #f5f5f7;--text-secondary: #a1a1a6;--text-tertiary: #6e6e73;--border: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .18);--shadow-md: 0 4px 16px rgba(0, 0, 0, .45);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .6);--overlay: rgba(0, 0, 0, .55)}}:root[data-theme=dark]{--accent-soft: rgba(10, 132, 255, .22);--bg: #1c1c1e;--bg-elevated: #2c2c2e;--bg-sidebar: #232325;--bg-hover: rgba(255, 255, 255, .06);--bg-selected: rgba(10, 132, 255, .28);--text: #f5f5f7;--text-secondary: #a1a1a6;--text-tertiary: #6e6e73;--border: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .18);--shadow-md: 0 4px 16px rgba(0, 0, 0, .45);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .6);--overlay: rgba(0, 0, 0, .55)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);font-size:13px;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit;color:inherit}.app-loading{display:grid;place-items:center;height:100%;color:var(--text-secondary)}@media (max-width: 768px){body{font-size:15px}}.mf-accent{color:var(--accent)}.mf-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:0 14px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--text);font-weight:500;cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s,box-shadow .12s}.mf-btn:hover:not(:disabled){background:var(--bg-hover)}.mf-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft);border-color:var(--accent)}.mf-btn:disabled{opacity:.5;cursor:default}.mf-btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.mf-btn-primary:hover:not(:disabled){background:var(--accent-hover)}.mf-btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.mf-btn-danger:hover:not(:disabled){background:var(--danger);filter:brightness(.92)}.mf-btn-block{width:100%}.mf-icon-btn{display:inline-grid;place-items:center;width:30px;height:30px;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;flex-shrink:0}.mf-icon-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}.mf-icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.mf-icon-btn:disabled{opacity:.35;cursor:default}.mf-form{display:flex;flex-direction:column;gap:6px}.mf-form label{font-weight:500;color:var(--text-secondary);font-size:12px}.mf-input{width:100%;height:34px;padding:0 10px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--text);outline:none;transition:border-color .12s,box-shadow .12s}.mf-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.mf-input.has-error{border-color:var(--danger)}.mf-field-error{color:var(--danger);font-size:12px}.mf-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:var(--overlay);display:flex;align-items:center;justify-content:center;padding:16px;animation:mf-fade .12s ease-out}@keyframes mf-fade{0%{opacity:0}}@keyframes mf-pop{0%{opacity:0;transform:scale(.97) translateY(4px)}}@keyframes mf-slide-up{0%{transform:translateY(100%)}}.mf-modal{width:100%;max-height:calc(100vh - 32px);display:flex;flex-direction:column;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);outline:none;animation:mf-pop .14s ease-out}.mf-modal-head{display:flex;align-items:center;gap:10px;padding:16px 16px 4px 20px}.mf-modal-head h2{flex:1;margin:0;font-size:15px;font-weight:600;line-height:1.3}.mf-modal-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:var(--accent);flex-shrink:0}.mf-modal.is-danger .mf-modal-icon{background:var(--danger-soft);color:var(--danger)}.mf-modal-body{padding:12px 20px 16px;overflow:auto;line-height:1.5}.mf-modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px 16px;border-top:1px solid var(--border)}.mf-confirm-msg{color:var(--text-secondary);word-break:break-word}.mf-confirm-msg strong{color:var(--text)}.mf-menu{position:fixed;z-index:1100;min-width:220px;max-width:320px;max-height:calc(100vh - 8px);overflow-y:auto;padding:5px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);outline:none;animation:mf-pop .08s ease-out}.mf-menu-item{display:flex;align-items:center;gap:8px;width:100%;height:30px;padding:0 10px 0 6px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text);text-align:left;cursor:default}.mf-menu-item.is-active:not(:disabled){background:var(--accent);color:var(--accent-contrast)}.mf-menu-item.is-active:not(:disabled) .mf-menu-shortcut{color:inherit;opacity:.85}.mf-menu-item.is-danger:not(:disabled){color:var(--danger)}.mf-menu-item.is-danger.is-active:not(:disabled){background:var(--danger);color:#fff}.mf-menu-item:disabled{color:var(--text-tertiary)}.mf-menu-icon{display:inline-grid;place-items:center;width:20px;flex-shrink:0}.mf-menu-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mf-menu-shortcut{color:var(--text-tertiary);font-size:12px;padding-left:16px}.mf-menu-sep{height:1px;margin:4px 6px;background:var(--border)}.mf-menu-header{padding:6px 10px 4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary)}.mf-sheet-overlay{align-items:flex-end;padding:0}.mf-sheet{width:100%;max-width:560px;max-height:85vh;display:flex;flex-direction:column;background:var(--bg-elevated);border-radius:16px 16px 0 0;box-shadow:var(--shadow-lg);padding-bottom:env(safe-area-inset-bottom,0px);outline:none;animation:mf-slide-up .2s cubic-bezier(.2,.8,.2,1)}.mf-sheet-grip{width:38px;height:5px;border-radius:3px;background:var(--border-strong);margin:8px auto 4px;flex-shrink:0}.mf-sheet-title{padding:6px 20px 10px;font-weight:600;font-size:15px;border-bottom:1px solid var(--border);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mf-sheet-body{overflow-y:auto;padding:6px 0}.mf-sheet-menu{display:flex;flex-direction:column}.mf-sheet-item{display:flex;align-items:center;gap:16px;min-height:52px;padding:0 20px;border:0;background:transparent;color:var(--text);font-size:16px;text-align:left}.mf-sheet-item:active:not(:disabled){background:var(--bg-hover)}.mf-sheet-item:disabled{color:var(--text-tertiary)}.mf-sheet-item.is-danger:not(:disabled){color:var(--danger)}.mf-sheet-item-icon{display:inline-grid;place-items:center;width:24px;color:var(--text-secondary)}.mf-sheet-item.is-danger:not(:disabled) .mf-sheet-item-icon{color:var(--danger)}.mf-sheet-item-label{flex:1}.mf-sheet-sep{height:1px;margin:4px 20px;background:var(--border)}.mf-sheet-header{padding:10px 20px 4px;font-size:12px;font-weight:600;text-transform:uppercase;color:var(--text-tertiary)}.mf-sheet-cancel{margin:4px 12px 12px;min-height:48px;border:0;border-radius:var(--radius);background:var(--bg-hover);color:var(--accent);font-size:16px;font-weight:600}.mf-toasts{position:fixed;z-index:1200;left:50%;bottom:24px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;width:max-content;max-width:calc(100vw - 24px);pointer-events:none}.mf-toast{display:flex;align-items:center;gap:10px;padding:10px 10px 10px 14px;border-radius:var(--radius);background:#2c2c2e;color:#f5f5f7;box-shadow:var(--shadow-md);pointer-events:auto;animation:mf-pop .15s ease-out;max-width:560px}.mf-toast.is-success svg:first-child{color:#4cd38a}.mf-toast.is-error svg:first-child{color:#ff6b6f}.mf-toast.is-warning svg:first-child{color:var(--warning)}.mf-toast-msg{flex:1;line-height:1.4;word-break:break-word}.mf-toast-action{border:0;background:transparent;color:#64b0ff;font-weight:600;cursor:pointer;padding:4px 6px}.mf-toast-close{display:grid;place-items:center;border:0;background:transparent;color:#a1a1a6;cursor:pointer;padding:4px;border-radius:4px}.mf-shortcut-hero{display:flex;gap:14px;align-items:center}.mf-shortcut-hero img{border-radius:14px;box-shadow:var(--shadow-sm);flex-shrink:0}.mf-shortcut-hero p{margin:0;color:var(--text-secondary)}.mf-steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:10px}.mf-step-icon{display:inline-grid;place-items:center;width:26px;height:26px;margin:0 4px;border-radius:6px;background:var(--accent-soft);color:var(--accent);vertical-align:middle}@media (max-width: 768px){.mf-overlay:not(.mf-sheet-overlay){align-items:flex-end;padding:0}.mf-overlay:not(.mf-sheet-overlay) .mf-modal{max-width:none!important;border-radius:16px 16px 0 0;max-height:92vh;padding-bottom:env(safe-area-inset-bottom,0px);animation:mf-slide-up .2s cubic-bezier(.2,.8,.2,1)}.mf-btn{min-height:44px;padding:0 18px;font-size:15px}.mf-modal-foot .mf-btn{flex:1}.mf-input{height:44px;font-size:16px}.mf-icon-btn{width:40px;height:40px}.mf-toasts{bottom:calc(88px + env(safe-area-inset-bottom,0px))}}@media (max-width: 768px){.mf-overlay:not(.mf-sheet-overlay) .mf-modal.is-sheet-full{height:100%;max-height:none;border-radius:0;border:0;padding-top:env(safe-area-inset-top,0px);animation:mf-slide-up .2s cubic-bezier(.2,.8,.2,1)}.mf-modal.is-sheet-full .mf-modal-body{flex:1}}.login-page{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px calc(24px + env(safe-area-inset-bottom,0px));background:radial-gradient(1200px 600px at 10% -10%,var(--accent-soft),transparent 60%),radial-gradient(900px 500px at 110% 110%,var(--accent-soft),transparent 60%),var(--bg)}.login-card{width:100%;max-width:380px;padding:28px 28px 24px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-lg)}.login-brand{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:20px}.login-brand img{border-radius:14px;box-shadow:var(--shadow-md)}.login-brand h1{margin:14px 0 4px;font-size:20px;font-weight:650;letter-spacing:-.01em}.login-brand p{margin:0;color:var(--text-secondary)}.login-alert{display:flex;gap:8px;align-items:flex-start;padding:10px 12px;margin-bottom:14px;border-radius:var(--radius);line-height:1.45}.login-alert svg{flex-shrink:0;margin-top:2px}.login-alert.is-error{background:var(--danger-soft);color:var(--danger)}.login-alert.is-warning{background:color-mix(in srgb,var(--warning) 16%,transparent);color:var(--text)}.login-alert.is-warning svg{color:var(--warning)}.login-form{display:flex;flex-direction:column;gap:14px}.login-field{display:flex;flex-direction:column;gap:6px}.login-field>span{font-size:12px;font-weight:500;color:var(--text-secondary)}.login-input-wrap{position:relative;display:flex;align-items:center}.login-input-wrap>svg{position:absolute;left:11px;color:var(--text-tertiary);pointer-events:none}.login-input-wrap input{width:100%;height:40px;padding:0 40px 0 34px;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--bg);outline:none;transition:border-color .12s,box-shadow .12s}.login-input-wrap input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:var(--bg-elevated)}.login-eye{position:absolute;right:4px;display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);cursor:pointer}.login-eye:hover{color:var(--text);background:var(--bg-hover)}.login-hint{color:var(--warning);font-size:12px}.login-submit{height:40px;margin-top:4px;font-size:14px}.login-link{display:inline-flex;align-items:center;justify-content:center;gap:4px;border:0;background:transparent;color:var(--accent);cursor:pointer;padding:4px}.login-link:disabled{opacity:.5}.login-text{margin:0;color:var(--text-secondary);line-height:1.5;text-align:center}.otp-input{display:flex;justify-content:center;gap:8px}.otp-input input{width:44px;height:52px;padding:0;text-align:center;font-size:22px;font-weight:600;font-family:var(--font-mono);border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--bg);outline:none;caret-color:var(--accent)}.otp-input input:nth-child(3){margin-right:8px}.otp-input input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:var(--bg-elevated)}.login-enroll-steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:12px;color:var(--text-secondary);line-height:1.5}.login-enroll-steps strong{color:var(--text)}.login-qr{display:grid;place-items:center;margin:10px 0}.login-qr img{padding:8px;background:#fff;border-radius:var(--radius);border:1px solid var(--border);image-rendering:pixelated}.login-otpauth{margin-bottom:8px;text-decoration:none}.login-secret{display:flex;flex-direction:column;gap:4px;font-size:12px}.login-secret-row{display:flex;align-items:center;gap:6px;padding:4px 4px 4px 10px;border-radius:var(--radius-sm);background:var(--bg);border:1px solid var(--border)}.login-secret-row code{flex:1;font-family:var(--font-mono);font-size:13px;color:var(--text);word-break:normal;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.login-footer{max-width:380px;margin:18px 0 0;text-align:center;font-size:12px;color:var(--text-tertiary);line-height:1.5}@media (max-width: 768px){.login-page{justify-content:flex-start;padding-top:calc(48px + env(safe-area-inset-top,0px))}.login-card{padding:24px 20px 20px;border-radius:20px}.login-input-wrap input,.login-submit{height:48px;font-size:16px}.otp-input{gap:6px}.otp-input input{width:42px;height:54px;font-size:24px}.otp-input input:nth-child(3){margin-right:4px}}.sh-dialog .mf-modal-body{display:flex;flex-direction:column;gap:14px}.sh-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius);background:var(--bg)}.sh-item-name{font-weight:600;word-break:break-word}.sh-item-sub,.sh-hint,.sh-muted{color:var(--text-secondary);font-size:12px;line-height:1.45}.sh-hint{margin:0}.sh-section-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:8px}.sh-form{display:flex;flex-direction:column;gap:10px}.sh-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:3px;border-radius:var(--radius);background:var(--bg);border:1px solid var(--border)}.sh-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;border:0;border-radius:calc(var(--radius) - 3px);background:transparent;color:var(--text-secondary);font-weight:500;cursor:pointer}.sh-tabs button.is-on{background:var(--bg-elevated);color:var(--text);box-shadow:var(--shadow-sm)}.sh-tabs button:disabled{opacity:.45;cursor:not-allowed}.sh-recipients{display:flex;flex-direction:column;gap:6px}.sh-chipbox{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:40px;padding:5px 8px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg-elevated);cursor:text}.sh-chipbox:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.sh-chipbox.is-disabled{opacity:.6}.sh-chip{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:3px 4px 3px 9px;border-radius:999px;background:var(--accent-soft);color:var(--text);font-size:12px;line-height:1.3}.sh-chip.is-checking{background:var(--bg-hover);color:var(--text-secondary)}.sh-chip.is-unchecked{background:var(--bg-hover);color:var(--text);outline:1px dashed var(--border-strong, var(--border))}.sh-chip.is-error{background:var(--danger-soft);color:var(--danger);flex-wrap:wrap}.sh-chip-label{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sh-chip-sub{color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sh-chip-err{font-size:11px}.sh-chip-x{display:grid;place-items:center;width:18px;height:18px;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer}.sh-chip-x:hover{background:var(--bg-hover)}.sh-chip-input{flex:1;min-width:160px;border:0;outline:none;background:transparent;padding:4px 2px}.sh-spinner{width:10px;height:10px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:sh-spin .8s linear infinite}@keyframes sh-spin{to{transform:rotate(360deg)}}.sh-picker-toggle{align-self:flex-start}.sh-picker-panel{margin-top:6px;display:flex;flex-direction:column;gap:6px}.sh-picker-list{list-style:none;margin:0;padding:0;max-height:200px;overflow:auto;border:1px solid var(--border);border-radius:var(--radius-sm)}.sh-picker-list li+li{border-top:1px solid var(--border)}.sh-picker-list button{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px;border:0;background:transparent;text-align:left;cursor:pointer}.sh-picker-list button:hover:not(:disabled){background:var(--bg-hover)}.sh-picker-list button:disabled{opacity:.55;cursor:default}.sh-picker-list button>span:nth-child(2){flex:1;display:flex;flex-direction:column}.sh-picker-list small{color:var(--text-secondary)}.sh-picker-list .sh-muted{padding:8px 10px}.sh-existing{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.sh-existing li{display:flex;align-items:center;gap:8px;padding:4px 6px;border-radius:var(--radius-sm)}.sh-existing li.is-removed .sh-existing-name{text-decoration:line-through;opacity:.6}.sh-existing-name{flex:1;display:flex;flex-direction:column;min-width:0}.sh-existing-name small{color:var(--text-secondary)}.sh-options{display:flex;flex-direction:column;gap:12px;padding-top:4px}.sh-check{display:flex;align-items:flex-start;gap:8px;cursor:pointer}.sh-check input{margin-top:2px;width:16px;height:16px;accent-color:var(--accent)}.sh-check span{display:flex;flex-direction:column}.sh-check small{color:var(--text-secondary);font-size:12px}.sh-field{display:flex;flex-direction:column;gap:6px}.sh-field-inline{flex-direction:row;align-items:center;flex-wrap:wrap;gap:10px}.sh-field-inline .sh-hint-row{flex-basis:100%}.sh-label{font-weight:500}.sh-num{width:160px}.sh-note{height:auto;min-height:56px;padding:8px 10px;resize:vertical;line-height:1.4}.sh-presets{display:flex;flex-wrap:wrap;gap:6px}.sh-presets button,.dup-choices button{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:0 12px;border-radius:999px;border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--text);cursor:pointer;font-size:12px}.sh-presets button.is-on,.dup-choices button.is-on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.sh-error{margin-top:2px}.sh-textbtn{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:var(--accent);cursor:pointer;padding:2px 0;font-size:12px}.sh-result{display:flex;gap:14px;align-items:center;padding:12px;border-radius:var(--radius);border:1px solid color-mix(in srgb,var(--success) 45%,transparent);background:color-mix(in srgb,var(--success) 9%,transparent)}.sh-result-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.sh-result-title{display:flex;align-items:center;gap:6px;font-weight:600;color:var(--success)}.sh-linkrow{display:flex;gap:6px}.sh-link{flex:1;min-width:0;font-family:var(--font-mono);font-size:12px}.sh-result-meta{font-size:12px;color:var(--text-secondary)}.sh-qr,.sh-qr-inline{flex-shrink:0;border-radius:6px;background:#fff}.sh-qr-inline{margin-top:8px}.sh-list-section{border-top:1px solid var(--border);padding-top:12px}.sh-shares{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.sh-shares li{display:flex;align-items:flex-start;gap:10px;padding:8px;border-radius:var(--radius-sm)}.sh-shares li:hover{background:var(--bg-hover)}.sh-shares li.is-editing{background:var(--accent-soft)}.sh-shares li.is-inactive{opacity:.6}.sh-mode{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;flex-shrink:0;background:var(--accent-soft);color:var(--accent)}.sh-mode.is-users{background:color-mix(in srgb,var(--success) 16%,transparent);color:var(--success)}.sh-share-text{flex:1;min-width:0}.sh-share-title{font-weight:500;word-break:break-word}.sh-share-sub{font-size:12px;color:var(--text-secondary)}.sh-share-actions,.shv-actions{display:flex;gap:2px;flex-shrink:0}.mf-icon-btn.is-danger{color:var(--danger)}.mf-icon-btn.is-on{background:var(--accent-soft);color:var(--accent)}.shv{flex:1;min-height:0;overflow:auto;padding:18px 20px 40px}.shv-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.shv-head h2{margin:0;font-size:18px}.shv-head p{margin:4px 0 0;color:var(--text-secondary)}.shv-tools{display:flex;align-items:center;gap:8px}.shv-filter{width:200px}.shv-toggle{align-items:center}.shv-toggle input{margin-top:0}.shv-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:48px 16px;color:var(--text-secondary);text-align:center}.shv-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px}.shv-cards.is-mobile{grid-template-columns:1fr}.shv-card{display:flex;align-items:center;gap:12px;width:100%;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);text-align:left;cursor:pointer;color:var(--text)}.shv-card.is-static{cursor:default}.shv-card:not(.is-static):hover{border-color:var(--accent)}.shv-card.is-expired{opacity:.6}.shv-card-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.shv-card-name{display:flex;align-items:center;gap:6px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shv-card-sub{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shv-new,.sb-badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 6px;border-radius:999px;background:var(--accent);color:var(--accent-contrast);font-size:11px;font-weight:700}.shv-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated)}.shv-table{width:100%;border-collapse:collapse;min-width:760px}.shv-table th,.shv-table td{padding:8px 10px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}.shv-table th{font-size:12px;font-weight:600;color:var(--text-secondary);background:var(--bg)}.shv-table tr:last-child td{border-bottom:0}.shv-table .is-right{text-align:right}.shv-item{display:inline-flex;align-items:center;gap:8px;max-width:260px;border:0;background:transparent;color:var(--text);cursor:pointer;text-align:left}.shv-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shv-item:hover:not(:disabled) span{color:var(--accent);text-decoration:underline}.sh-mode-pill{display:inline-block;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:600;background:var(--accent-soft);color:var(--accent)}.sh-mode-pill.is-users{background:color-mix(in srgb,var(--success) 16%,transparent);color:var(--success)}.shv-status{font-size:12px;font-weight:600}.shv-status.is-on{color:var(--success)}.shv-status.is-off{color:var(--text-tertiary)}@media (max-width: 768px){.sh-result{flex-direction:column;align-items:stretch}.sh-qr{align-self:center}.sh-linkrow{flex-direction:column}.sh-link{flex:none}.shv{padding:14px 12px calc(96px + env(safe-area-inset-bottom,0px))}.shv-filter{width:140px}.sh-chip-input{font-size:16px}}.tp-panel{position:fixed;right:16px;bottom:40px;z-index:900;width:380px;max-width:calc(100vw - 32px);display:flex;flex-direction:column;max-height:min(70vh,560px);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;animation:mf-pop .15s ease-out}.tp-head{position:relative;display:flex;align-items:center;gap:10px;padding:10px 8px 10px 12px;cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid var(--border)}.tp-panel.is-collapsed .tp-head{border-bottom:0}.tp-head-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--accent-soft);color:var(--accent);flex-shrink:0}.tp-head-text{flex:1;min-width:0}.tp-title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tp-sub{font-size:12px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.tp-head-actions{display:flex;gap:2px}.tp-head-bar{position:absolute;left:0;right:0;bottom:0;height:2px;background:transparent}.tp-head-bar>div{height:100%;background:var(--accent);transition:width .3s}.tp-body{overflow-y:auto;overscroll-behavior:contain}.tp-resume{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px;padding:10px;border-radius:var(--radius);background:var(--accent-soft);line-height:1.4;font-size:12px}.tp-resume>svg{color:var(--accent);flex-shrink:0}.tp-resume>span{flex:1;min-width:180px}.tp-list{list-style:none;margin:0;padding:4px 0}.tp-row{display:flex;align-items:center;gap:10px;padding:8px 8px 8px 12px}.tp-row+.tp-row{border-top:1px solid var(--border)}.tp-icon{position:relative;flex-shrink:0}.tp-dir{position:absolute;right:-4px;bottom:-2px;display:grid;place-items:center;width:15px;height:15px;border-radius:50%;color:#fff;border:2px solid var(--bg-elevated)}.tp-dir.is-up{background:var(--accent)}.tp-dir.is-down{background:var(--success)}.tp-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.tp-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tp-status,.tp-dest{font-size:11.5px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}.tp-dest{color:var(--text-tertiary)}.tp-row.is-error .tp-status{color:var(--danger);white-space:normal}.tp-row.is-waiting .tp-status,.tp-row.is-needs-file .tp-status{color:var(--warning)}.tp-row.is-done .tp-status{color:var(--success)}.tp-bar{height:4px;border-radius:2px;background:var(--bg-hover);overflow:hidden}.tp-bar>div{height:100%;border-radius:2px;background:var(--accent);transition:width .25s linear}.tp-row.is-paused .tp-bar>div,.tp-row.is-waiting .tp-bar>div,.tp-row.is-needs-file .tp-bar>div{background:var(--warning)}.tp-row.is-error .tp-bar>div{background:var(--danger)}.tp-bar.is-indeterminate>div{width:35%;animation:tp-indeterminate 1.2s ease-in-out infinite}@keyframes tp-indeterminate{0%{transform:translate(-100%)}to{transform:translate(300%)}}.tp-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.tp-pick{min-height:28px;padding:0 10px;font-size:12px}@media (max-width: 768px){.tp-panel{left:0;right:0;bottom:0;width:100%;max-width:none;max-height:70vh;border-radius:16px 16px 0 0;border-left:0;border-right:0;border-bottom:0;padding-bottom:env(safe-area-inset-bottom,0px)}.tp-panel.is-collapsed{bottom:env(safe-area-inset-bottom,0px);padding-bottom:0}.mf-explorer.has-selection-bar~.tp-panel.is-collapsed,body.mf-has-actionbar .tp-panel.is-collapsed{bottom:calc(64px + env(safe-area-inset-bottom,0px))}.tp-head{padding:12px 10px 12px 16px}.tp-row{padding:10px 10px 10px 16px}.tp-name{font-size:15px}.tp-status,.tp-dest{font-size:13px}}.tp-row.is-conflict .tp-status{color:var(--warning)}.tp-row.is-disk-full .tp-status{color:var(--danger)}.tp-row.is-disk-full .tp-bar>div{background:var(--danger)}.tp-flag{display:grid;place-items:center;width:28px;height:28px;color:var(--warning)}.mf-explorer{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--bg-elevated);color:var(--text);user-select:none;-webkit-user-select:none}.mf-explorer.is-embedded{min-height:480px;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.mf-explorer input,.mf-explorer textarea{user-select:text;-webkit-user-select:text}.ex-toolbar{flex-shrink:0;background:var(--bg-sidebar);border-bottom:1px solid var(--border)}.ex-toolbar-row{display:flex;align-items:center;gap:8px;height:var(--toolbar-h);padding:0 10px}.ex-nav{display:flex;gap:2px}.ex-cmd{display:inline-flex;align-items:center;gap:6px;height:32px;min-width:32px;padding:0 7px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text);cursor:pointer;white-space:nowrap;justify-content:center}.ex-cmd:hover:not(:disabled){background:var(--bg-hover)}.ex-cmd:active:not(:disabled){background:var(--border)}.ex-cmd:disabled{color:var(--text-tertiary);cursor:default}.ex-cmd:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.ex-cmd.is-on{background:var(--accent-soft);color:var(--accent)}.ex-cmd.has-text{padding:0 10px}.ex-cmd.is-primary:not(:disabled) svg{color:var(--accent)}.ex-cmd-sep{width:1px;height:20px;margin:0 4px;background:var(--border-strong);flex-shrink:0}.ex-cmd-spacer{flex:1}.ex-commandbar{display:flex;align-items:center;gap:2px;height:44px;padding:0 8px;background:var(--bg-elevated);border-top:1px solid var(--border);overflow-x:auto;scrollbar-width:none}.ex-commandbar::-webkit-scrollbar{display:none}.ex-address{flex:1;min-width:0;display:flex;align-items:center;height:32px;padding:0 4px;border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border);cursor:text}.ex-address:hover{border-color:var(--border-strong)}.ex-address.is-editing{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);padding-left:8px;gap:6px}.ex-address-icon{color:var(--folder);flex-shrink:0}.ex-address-input{flex:1;min-width:0;height:100%;border:0;outline:none;background:transparent;font-family:var(--font-mono);font-size:12.5px}.ex-crumbs{flex:1;min-width:0;height:100%;display:flex;align-items:center;overflow-x:auto;scrollbar-width:none}.ex-crumbs::-webkit-scrollbar{display:none}.ex-crumb{display:inline-flex;align-items:center;gap:5px;height:24px;max-width:220px;padding:0 7px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--text-secondary);cursor:pointer;white-space:nowrap;flex-shrink:0}.ex-crumb span{overflow:hidden;text-overflow:ellipsis}.ex-crumb:hover{background:var(--bg-hover);color:var(--text)}.ex-crumb.is-current{color:var(--text);font-weight:600}.ex-crumb.is-drop{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.ex-crumb-sep{color:var(--text-tertiary);flex-shrink:0}.ex-address-edit{display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:5px;background:transparent;color:var(--text-tertiary);cursor:pointer;flex-shrink:0;opacity:0}.ex-address:hover .ex-address-edit{opacity:1}.ex-address-edit:hover{background:var(--bg-hover);color:var(--text)}.ex-search{position:relative;display:flex;align-items:center;width:260px;height:32px;flex-shrink:1;min-width:140px}.ex-search>svg{position:absolute;left:9px;color:var(--text-tertiary);pointer-events:none}.ex-search input{width:100%;height:100%;padding:0 28px 0 30px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-elevated);outline:none}.ex-search input::-webkit-search-cancel-button{display:none}.ex-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.ex-search-clear{position:absolute;right:5px;display:grid;place-items:center;width:20px;height:20px;border:0;border-radius:50%;background:var(--bg-hover);color:var(--text-secondary);cursor:pointer}.ex-user{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 8px 0 3px;border:0;border-radius:16px;background:transparent;color:var(--text);cursor:pointer;max-width:200px}.ex-user:hover{background:var(--bg-hover)}.ex-user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.ex-avatar{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,var(--accent),#5e5ce6);color:#fff;font-weight:600;font-size:12px;flex-shrink:0}.ex-body{flex:1;min-height:0;display:flex}.ex-main{flex:1;min-width:0;display:flex;flex-direction:column;position:relative}.ex-sidebar{width:var(--sidebar-w);flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-sidebar);border-right:1px solid var(--border);overflow-y:auto;padding:8px 6px 12px}.sb-section+.sb-section{margin-top:14px}.sb-heading{padding:4px 10px;font-size:11px;font-weight:600;color:var(--text-tertiary);letter-spacing:.02em}.sb-list,.sb-list ul{list-style:none;margin:0;padding:0}.sb-row{display:flex;align-items:center;gap:6px;height:28px;padding-right:8px;border-radius:var(--radius-sm);cursor:default;color:var(--text);border:1px solid transparent}.sb-row:hover{background:var(--bg-hover)}.sb-row.is-active{background:var(--bg-selected);font-weight:500}.sb-row.is-drop{background:var(--accent-soft);border-color:var(--accent)}.sb-quick{padding-left:10px}.sb-quick .sb-icon{color:var(--accent)}.sb-twisty{display:grid;place-items:center;width:16px;height:16px;padding:0;border:0;background:transparent;color:var(--text-tertiary);cursor:pointer;flex-shrink:0;transition:transform .12s}.sb-twisty.is-open{transform:rotate(90deg)}.sb-twisty.is-leaf{visibility:hidden}.sb-icon{display:inline-grid;place-items:center;width:18px;flex-shrink:0;color:var(--text-secondary)}.sb-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-hint{padding:4px 10px;font-size:12px;color:var(--text-tertiary)}.sb-hint.is-error{color:var(--danger)}.sb-footer{margin-top:auto;padding-top:12px}.ex-banner{display:flex;align-items:center;gap:10px;min-height:38px;padding:6px 8px 6px 14px;background:var(--bg);border-bottom:1px solid var(--border);color:var(--text-secondary);flex-shrink:0}.ex-banner>svg{flex-shrink:0;color:var(--accent)}.ex-banner.is-warning>svg{color:var(--warning)}.ex-banner.is-clipboard{background:var(--accent-soft);color:var(--text)}.ex-banner-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ex-banner-btn{min-height:28px;padding:0 10px;font-size:12px}.ex-pane{position:relative;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;outline:none}.ex-pane.is-dropping{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.ex-loading-bar{position:sticky;top:0;left:0;height:2px;margin-top:-2px;overflow:hidden;z-index:3}.ex-pane.is-loading .ex-loading-bar:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;width:30%;background:var(--accent);animation:ex-loading 1s ease-in-out infinite}@keyframes ex-loading{0%{transform:translate(-100%)}to{transform:translate(400%)}}.ex-band{position:absolute;z-index:4;border:1px solid var(--accent);background:var(--accent-soft);pointer-events:none}.ex-drop-hint{position:sticky;bottom:16px;margin:0 auto;width:max-content;max-width:calc(100% - 32px);display:flex;align-items:center;gap:10px;padding:12px 18px;border-radius:var(--radius-lg);background:var(--accent);color:var(--accent-contrast);font-weight:600;box-shadow:var(--shadow-md);pointer-events:none;z-index:5}.ex-more{padding:16px;text-align:center;color:var(--text-tertiary)}.ex-empty{height:100%;min-height:260px;display:grid;place-items:center;padding:24px}.ex-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;max-width:420px}.ex-state-icon{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:var(--bg);color:var(--text-tertiary);margin-bottom:4px}.ex-state-icon.is-error{background:var(--danger-soft);color:var(--danger)}.ex-state-title{font-size:15px;font-weight:600}.ex-state-sub{color:var(--text-secondary)}.ex-state-actions{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap;justify-content:center}.ex-details{--cols: minmax(220px, 1fr) 150px 150px 96px;min-width:620px;padding-bottom:24px}.ex-details.has-location{--cols: minmax(200px, 1fr) minmax(140px, .6fr) 150px 130px 90px;min-width:760px}.ex-colhead{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:var(--cols);height:30px;padding:0 8px;background:var(--bg-elevated);border-bottom:1px solid var(--border)}.ex-colhead>button,.ex-colhead-static{display:flex;align-items:center;gap:4px;padding:0 8px;border:0;border-right:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:12px;text-align:left;cursor:pointer;white-space:nowrap;overflow:hidden}.ex-colhead-static{cursor:default}.ex-colhead>button:last-child{border-right:0}.ex-colhead>button:hover{background:var(--bg-hover);color:var(--text)}.ex-colhead>button.is-sorted{color:var(--text);font-weight:600}.ex-colhead>.is-right{justify-content:flex-end}.ex-row{display:grid;grid-template-columns:var(--cols);align-items:center;height:var(--row-h);margin:0 4px;padding:0 4px;border-radius:var(--radius-sm);border:1px solid transparent;cursor:default}.ex-row:hover{background:var(--bg-hover)}.ex-row.is-selected,.ex-tile.is-selected,.ex-mrow.is-selected{background:var(--bg-selected)}.ex-row.is-focus,.ex-tile.is-focus{border-color:color-mix(in srgb,var(--accent) 55%,transparent)}.ex-row.is-cut,.ex-tile.is-cut,.ex-mrow.is-cut{opacity:.5}.ex-row.is-drop,.ex-tile.is-drop,.ex-mrow.is-drop{background:var(--accent-soft);border-color:var(--accent)}.ex-cell{padding:0 8px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ex-cell-name{display:flex;align-items:center;gap:8px}.ex-cell-name svg{flex-shrink:0}.ex-cell-muted{color:var(--text-secondary);font-variant-numeric:tabular-nums}.ex-cell.is-right{text-align:right}.ex-name-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ex-rename{flex:1;min-width:0;height:24px;padding:0 6px;border:1px solid var(--accent);border-radius:4px;background:var(--bg-elevated);outline:none;box-shadow:0 0 0 3px var(--accent-soft);font:inherit;resize:none}.ex-rename.has-error{border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}.ex-rename-error{position:absolute;z-index:10;margin-top:54px;padding:6px 10px;border-radius:var(--radius-sm);background:var(--danger);color:#fff;font-size:12px;white-space:normal;max-width:280px;box-shadow:var(--shadow-md)}.ex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:4px;padding:10px;align-content:start}.ex-tile{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 6px 8px;border-radius:var(--radius);border:1px solid transparent;cursor:default;min-width:0}.ex-tile:hover{background:var(--bg-hover)}.ex-tile-name{width:100%;text-align:center;font-size:12px;line-height:1.3;word-break:break-word;display:flex;justify-content:center}.ex-tile-name .ex-name-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal}.ex-tile.is-selected .ex-tile-name .ex-name-text{background:var(--accent);color:var(--accent-contrast);border-radius:4px;padding:0 4px}.ex-tile .ex-rename{height:auto;min-height:36px;text-align:center;font-size:12px;padding:3px 4px}.ex-thumb{display:grid;place-items:center;flex-shrink:0;overflow:hidden;border-radius:6px}.ex-thumb img{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px;box-shadow:var(--shadow-sm);pointer-events:none;background:repeating-conic-gradient(var(--bg-hover) 0% 25%,transparent 0% 50%) 50% / 12px 12px}.ex-mlist{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}.ex-mrow{display:flex;align-items:center;gap:12px;min-height:var(--row-h-touch);padding:6px 4px 6px 16px;border-bottom:1px solid var(--border);border-left:0;-webkit-touch-callout:none;touch-action:manipulation}.ex-mrow:active{background:var(--bg-hover)}.ex-mrow-icon{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0}.ex-mrow-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.ex-mrow-name{display:flex;font-size:16px;min-width:0}.ex-mrow-sub{font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ex-mrow-more{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--text-secondary);flex-shrink:0}.ex-mrow-more:active{background:var(--bg-hover)}.ex-check{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:2px solid var(--border-strong);color:#fff;flex-shrink:0}.ex-check.is-on{background:var(--accent);border-color:var(--accent)}.ex-check.is-floating{position:absolute;top:6px;left:6px;background:var(--bg-elevated);z-index:1}.ex-check.is-floating.is-on{background:var(--accent)}.ex-grid.is-mobile{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));padding:10px 10px calc(96px + env(safe-area-inset-bottom,0px))}.is-mobile .ex-tile{-webkit-touch-callout:none;touch-action:manipulation}.is-mobile .ex-tile-name{font-size:13px}.ex-preview{width:320px;flex-shrink:0;display:flex;flex-direction:column;border-left:1px solid var(--border);background:var(--bg);min-height:0}.ex-preview-head{display:flex;align-items:center;justify-content:space-between;height:36px;padding:0 6px 0 14px;font-size:12px;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border)}.ex-preview-body{flex:1;min-height:160px;display:flex;overflow:hidden;padding:12px}.ex-preview-body>*{flex:1}.ex-preview-meta{padding:12px 14px 16px;border-top:1px solid var(--border);overflow-y:auto;max-height:50%}.ex-preview-name{font-weight:600;font-size:14px;word-break:break-word;margin-bottom:10px;-webkit-user-select:text;user-select:text}.ex-preview-meta dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0 0 12px;font-size:12px}.ex-preview-meta dt{color:var(--text-tertiary)}.ex-preview-meta dd{margin:0;word-break:break-word;-webkit-user-select:text;user-select:text}.ex-preview-path{font-family:var(--font-mono);font-size:11.5px}.ex-preview-actions{display:flex;gap:8px;flex-wrap:wrap}.ex-preview-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center;gap:4px}.pv-media{display:grid;place-items:center;width:100%;height:100%;min-height:0}.pv-media img,.pv-media video{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px}.pv-audio{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;width:100%}.pv-audio audio{width:100%;max-width:420px}.pv-pdf{display:flex;flex-direction:column;gap:8px;width:100%;height:100%}.pv-pdf iframe{flex:1;width:100%;min-height:240px;border:1px solid var(--border);border-radius:6px;background:#fff}.pv-pdf-open{align-self:center;text-decoration:none}.pv-text{margin:0;width:100%;height:100%;overflow:auto;padding:12px;border-radius:6px;background:var(--bg-elevated);border:1px solid var(--border);font-family:var(--font-mono);font-size:12px;line-height:1.5;white-space:pre-wrap;word-break:break-word;user-select:text;-webkit-user-select:text}.pv-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:100%;text-align:center}.pv-message{color:var(--text-secondary);line-height:1.5}.pv-loading{display:grid;place-items:center;width:100%;height:100%;color:var(--text-tertiary)}.ql-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:flex;flex-direction:column;background:#121214f0;color:#f5f5f7;animation:mf-fade .15s ease-out;--text: #f5f5f7;--text-secondary: #c7c7cc;--text-tertiary: #8e8e93;--bg-elevated: #1c1c1e;--bg: #2c2c2e;--border: rgba(255, 255, 255, .12);--border-strong: rgba(255, 255, 255, .2)}.ql-bar{display:flex;align-items:center;gap:10px;padding:calc(8px + env(safe-area-inset-top,0px)) 10px 8px;flex-shrink:0}.ql-btn{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:#ffffff14;color:#fff;cursor:pointer;flex-shrink:0}.ql-btn:hover{background:#ffffff29}.ql-title{flex:1;min-width:0;text-align:center}.ql-name{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ql-sub{font-size:12px;color:#a1a1a6}.ql-stage{position:relative;flex:1;min-height:0;display:flex;align-items:center;padding:0 64px calc(16px + env(safe-area-inset-bottom,0px))}.ql-content{flex:1;height:100%;min-width:0;display:flex}.ql-content>*{flex:1}.ql-content .pv-pdf iframe{min-height:0}.ql-nav{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:44px;height:64px;border:0;border-radius:var(--radius);background:#ffffff14;color:#fff;cursor:pointer}.ql-nav:hover{background:#ffffff2e}.ql-nav.is-prev{left:10px}.ql-nav.is-next{right:10px}.ex-status{display:flex;align-items:center;gap:8px;height:28px;padding:0 8px 0 14px;flex-shrink:0;border-top:1px solid var(--border);background:var(--bg-sidebar);color:var(--text-secondary);font-size:12px;font-variant-numeric:tabular-nums}.ex-status-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ex-status-chip{padding:1px 8px;border-radius:10px;background:var(--bg-hover);font-size:11px}.ex-status-spacer{flex:1}.ex-status-btn{display:grid;place-items:center;width:24px;height:22px;border:0;border-radius:4px;background:transparent;color:var(--text-secondary);cursor:pointer}.ex-status-btn:hover{background:var(--bg-hover)}.ex-status-btn.is-on{background:var(--accent-soft);color:var(--accent)}.ex-props-head{display:flex;align-items:center;gap:14px;padding-bottom:14px;margin-bottom:12px;border-bottom:1px solid var(--border)}.ex-props-name{font-weight:600;font-size:15px;word-break:break-word;-webkit-user-select:text;user-select:text}.ex-props-sub{color:var(--text-secondary);font-size:12px}.ex-props{display:grid;grid-template-columns:120px 1fr;gap:8px 12px;margin:0}.ex-props dt{color:var(--text-secondary)}.ex-props dd{margin:0;word-break:break-word;-webkit-user-select:text;user-select:text}.ex-mono{font-family:var(--font-mono);font-size:12px}.ex-inline-error{margin-bottom:10px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--danger-soft);color:var(--danger)}.ex-perm-chips{display:flex;flex-wrap:wrap;gap:4px}.ex-perm-chip{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:10px;background:var(--bg-hover);color:var(--text-tertiary);font-size:11.5px}.ex-perm-chip.is-on{background:color-mix(in srgb,var(--success) 16%,transparent);color:var(--success)}.ex-pw-form{display:flex;flex-direction:column;gap:12px}.ex-note{margin:4px 0 0;color:var(--text-secondary);font-size:12px;line-height:1.5}.ex-conflict-list{margin:8px 0 12px;padding:8px 12px 8px 28px;max-height:140px;overflow:auto;border-radius:var(--radius-sm);background:var(--bg);font-size:12px;word-break:break-all}.ex-choice-list{display:flex;flex-direction:column;gap:6px;margin-top:12px}.ex-choice{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);color:var(--text);text-align:left;cursor:pointer}.ex-choice>svg{color:var(--accent);flex-shrink:0;margin-top:2px}.ex-choice span{display:flex;flex-direction:column;gap:2px}.ex-choice small{color:var(--text-secondary)}.ex-choice:hover:not(:disabled),.ex-choice:focus-visible{border-color:var(--accent);background:var(--accent-soft);outline:none}.ex-choice:disabled{opacity:.5;cursor:default}.ex-blocked-detail{padding:8px 10px;border-radius:var(--radius-sm);background:var(--danger-soft);color:var(--danger);font-size:12px;word-break:break-word}.ex-mbar{flex-shrink:0;position:sticky;top:0;z-index:20;padding-top:env(safe-area-inset-top,0px);background:var(--bg-sidebar);border-bottom:1px solid var(--border)}.ex-mbar-row{display:flex;align-items:center;gap:2px;height:52px;padding:0 4px}.ex-mbar-title{flex:1;min-width:0;padding:0 6px;font-size:17px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ex-mbar-text{border:0;background:transparent;color:var(--accent);font-size:15px;font-weight:600;padding:8px 10px}.ex-mbar-crumbs{padding:0 8px 6px}.ex-address.is-compact{height:32px;border:0;background:transparent;padding:0;cursor:default}.ex-address.is-compact .ex-crumb{height:30px;font-size:14px;padding:0 8px;background:var(--bg-hover);border-radius:15px}.ex-address.is-compact .ex-crumb.is-current{background:var(--accent-soft);color:var(--accent)}.ex-address.is-compact .ex-crumb-sep{margin:0 2px}.ex-msearch{position:relative;display:flex;align-items:center;gap:6px;margin:0 10px 8px;padding:0 4px 0 12px;height:40px;border-radius:var(--radius);background:var(--bg-elevated);border:1px solid var(--border)}.ex-msearch>svg{color:var(--text-tertiary);flex-shrink:0}.ex-msearch input{flex:1;min-width:0;height:100%;border:0;outline:none;background:transparent;font-size:16px}.ex-msearch input::-webkit-search-cancel-button{display:none}.ex-fab{position:fixed;right:18px;bottom:calc(22px + env(safe-area-inset-bottom,0px));z-index:30;display:grid;place-items:center;width:58px;height:58px;border:0;border-radius:18px;background:var(--accent);color:var(--accent-contrast);box-shadow:0 6px 20px #0a84ff73}.ex-fab:active{transform:scale(.95)}body:has(.tp-panel) .ex-fab{bottom:calc(86px + env(safe-area-inset-bottom,0px))}.ex-actionbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;justify-content:space-around;padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));background:var(--bg-sidebar);border-top:1px solid var(--border);box-shadow:0 -4px 16px #0000000f}.ex-actionbar button{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;min-height:52px;padding:4px 2px;border:0;background:transparent;color:var(--accent);font-size:11px;border-radius:var(--radius-sm)}.ex-actionbar button.is-danger{color:var(--danger)}.ex-actionbar button:disabled{color:var(--text-tertiary)}.ex-actionbar button:active:not(:disabled){background:var(--bg-hover)}.has-selection-bar .ex-mlist,.has-selection-bar .ex-grid.is-mobile{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}.ex-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:950;background:var(--overlay);animation:mf-fade .15s ease-out}.ex-drawer{position:absolute;top:0;bottom:0;left:0;width:min(86vw,340px);display:flex;flex-direction:column;background:var(--bg-sidebar);box-shadow:var(--shadow-lg);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);animation:ex-drawer-in .2s cubic-bezier(.2,.8,.2,1)}@keyframes ex-drawer-in{0%{transform:translate(-100%)}}.ex-drawer-head{display:flex;align-items:center;gap:10px;height:56px;padding:0 6px 0 16px;font-weight:600;font-size:16px;border-bottom:1px solid var(--border);flex-shrink:0}.ex-drawer-head img{border-radius:7px}.ex-drawer-head span{flex:1}.ex-drawer .ex-sidebar{width:100%;flex:1;border-right:0;padding:10px 8px}.ex-drawer .sb-row{height:44px;font-size:15px}.ex-drawer .sb-twisty{width:28px;height:28px}.ex-drawer-user{display:flex;flex-direction:column;gap:2px;border-top:1px solid var(--border);padding-top:10px}.ex-drawer-id{display:flex;align-items:center;gap:12px;padding:6px 10px 10px}.ex-drawer-id .ex-avatar{width:36px;height:36px;font-size:15px}.ex-drawer-id span{display:flex;flex-direction:column;min-width:0}.ex-drawer-id strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ex-drawer-id small{color:var(--text-secondary)}.ex-drawer-item{display:flex;align-items:center;gap:14px;min-height:48px;padding:0 12px;border:0;border-radius:var(--radius);background:transparent;color:var(--text);font-size:15px;text-align:left}.ex-drawer-item svg{color:var(--text-secondary)}.ex-drawer-item:active{background:var(--bg-hover)}.ex-drawer-item.is-danger,.ex-drawer-item.is-danger svg{color:var(--danger)}.mf-explorer.is-mobile{background:var(--bg-elevated)}.mf-explorer.is-mobile .ex-banner{font-size:13px}.mf-explorer.is-mobile .ex-banner-text{white-space:normal}.mf-explorer.is-mobile .ex-banner-btn{min-height:34px}@media (max-width: 1100px) and (min-width: 769px){.ex-commandbar .ex-cmd.has-text:not(.is-primary) span{display:none}.ex-user-name{display:none}.ex-search{width:200px}.ex-preview{width:260px}}@media (max-width: 920px) and (min-width: 769px){.ex-sidebar{width:190px}}.ex-vspacer{flex-shrink:0;pointer-events:none}.ex-tile{overflow:visible}.ex-mrow{overflow:hidden}.ex-share-badge{display:inline-grid;place-items:center;flex-shrink:0;width:18px;height:18px;margin-left:4px;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.ex-owner-badge{flex-shrink:0;max-width:120px;margin-left:6px;padding:0 6px;border-radius:999px;background:var(--bg-hover);color:var(--text-secondary);font-size:11px;line-height:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ex-tile-share{position:absolute;top:6px;right:6px;z-index:1}.ex-tile-share .ex-share-badge{margin:0;background:var(--bg-elevated);box-shadow:var(--shadow-sm)}.ex-tile-owner{position:absolute;top:6px;left:4px;right:28px;z-index:1;display:flex}.ex-tile-owner .ex-owner-badge{margin:0;background:var(--bg-elevated);box-shadow:var(--shadow-sm)}.ex-mono-cell{font-family:var(--font-mono);font-size:12px}.ex-ro-badge{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px;border-radius:999px;background:color-mix(in srgb,var(--warning) 18%,transparent);color:color-mix(in srgb,var(--warning) 70%,var(--text));font-weight:600;font-size:12px;white-space:nowrap}.ex-ro-badge.is-compact{height:20px;padding:0 8px;margin-left:8px;font-size:11px;vertical-align:middle}.ex-address-static{display:flex;align-items:center;gap:8px;padding:0 12px;font-weight:600;color:var(--text)}.ex-search.is-hidden{visibility:hidden}.ex-crumb.is-prefix{color:var(--text-secondary)}.ex-crumb.is-prefix:disabled{cursor:default;opacity:1}.sb-avatar{display:inline-grid;place-items:center;width:18px;height:18px;flex-shrink:0;margin-right:8px;border-radius:50%;background:var(--accent);color:var(--accent-contrast);font-size:10px;font-weight:700}.sb-trailing{margin-left:auto;color:var(--text-tertiary);flex-shrink:0}.sb-row .sb-badge{margin-left:auto;flex-shrink:0}.sb-badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 6px;border-radius:999px;background:var(--accent);color:var(--accent-contrast);font-size:11px;font-weight:700}.ex-props-link{margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.ex-props-link-label{font-weight:600;margin-bottom:6px}.ex-copyfield{display:flex;gap:6px}.ex-copyfield .mf-input{flex:1;min-width:0;font-family:var(--font-mono);font-size:12px}.ex-break{word-break:break-all}.dup-intro{margin:0 0 10px;color:var(--text-secondary)}.dup-applyall{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:10px;font-weight:600;cursor:pointer}.dup-applyall input{width:16px;height:16px;accent-color:var(--accent)}.dup-applyall small{flex-basis:100%;font-weight:400;color:var(--text-secondary)}.dup-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.dup-row{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg)}.dup-row.is-skip{opacity:.7}.dup-row.is-replace{border-color:color-mix(in srgb,var(--danger) 45%,transparent)}.dup-folder{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-secondary);margin-bottom:6px}.dup-compare{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);align-items:stretch;gap:8px}.dup-vs{display:grid;place-items:center;color:var(--text-tertiary)}.dup-side{min-width:0;padding:8px 10px;border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border)}.dup-side-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);margin-bottom:6px}.dup-side.is-new .dup-side-label{color:var(--accent)}.dup-file{display:flex;align-items:flex-start;gap:8px}.dup-file svg{flex-shrink:0}.dup-file-text{flex:1;min-width:0}.dup-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dup-meta{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dup-mono,.dup-hint code{font-family:var(--font-mono);font-size:11.5px}.dup-batch{white-space:normal}.dup-preview{flex-shrink:0}.dup-choices{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.dup-choices button{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:0 12px;border-radius:999px;border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--text);cursor:pointer;font-size:12px}.dup-choices button.is-on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.dup-choices button.is-danger.is-on{border-color:var(--danger);background:var(--danger-soft);color:var(--danger)}.dup-hint{margin-top:6px;font-size:12px;color:var(--text-secondary);word-break:break-all}.dup-hint.is-danger{color:var(--danger);word-break:normal}@media (max-width: 768px){.dup-compare{grid-template-columns:1fr}.dup-vs{transform:rotate(90deg);height:16px}.dup-choices button{min-height:40px;font-size:14px;flex:1 1 auto;justify-content:center}}.ex-sidebar .sb-section.sb-drive-section{margin-top:auto;position:sticky;bottom:0;padding-top:10px;background:var(--bg-sidebar)}.ex-sidebar .sb-drive-section:empty{display:none}.ex-sidebar .sb-drive-section:last-child{margin-bottom:-12px;padding-bottom:12px}.sb-drive-section+.sb-footer{margin-top:0}.ex-drawer .ex-sidebar .sb-section.sb-drive-section{position:static}.sb-drive{display:flex;flex-direction:column;gap:6px;padding:10px 10px 4px;border-top:1px solid var(--border);cursor:default}.sb-drive-head{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text)}.sb-drive-head svg{flex-shrink:0;color:var(--text-secondary)}.sb-drive-name{flex:1;min-width:0}.sb-drive-badge{flex-shrink:0;padding:1px 7px;border-radius:999px;font-size:10.5px;font-weight:600;background:var(--danger-soft);color:var(--danger)}.sb-drive.is-warn .sb-drive-badge{background:#f5a52429;color:var(--warning)}.sb-drive-bar{height:7px;border-radius:4px;background:var(--border);overflow:hidden}.sb-drive-bar>div{height:100%;border-radius:4px;background:var(--accent);transition:width .3s ease}.sb-drive.is-warn .sb-drive-bar>div{background:var(--warning)}.sb-drive.is-critical .sb-drive-bar>div{background:var(--danger)}.sb-drive-text{font-size:11.5px;color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ex-drawer .sb-drive-head{font-size:14px}.ex-drawer .sb-drive-text{font-size:13px}.ex-banner.is-danger{background:var(--danger-soft);color:var(--text);font-weight:500}.ex-banner.is-danger>svg{color:var(--danger)}.ex-fab.is-blocked{background:var(--text-tertiary);box-shadow:var(--shadow-sm)}.ex-drop-hint.is-blocked{background:var(--danger)}
