.search-backdrop{position:fixed;inset:0;background:#000c;z-index:100;display:flex;justify-content:center;padding-top:120px}.search-palette{width:600px;max-height:calc(100vh - 200px);background:var(--color-black);border:1px solid var(--color-green-primary);border-radius:0;display:flex;flex-direction:column;font-family:var(--font-family-mono);overflow:hidden;align-self:flex-start}.search-input-row{display:flex;align-items:center;padding:14px 20px;border-bottom:1px solid var(--color-border-dim);gap:12px}.search-icon{color:var(--color-text-secondary);font-size:14px;flex-shrink:0}.search-input{flex:1;background:none;border:none;color:var(--color-text-primary);font-family:var(--font-family-mono);font-size:14px;outline:none;caret-color:var(--color-green-primary)}.search-input::placeholder{color:var(--color-text-dim)}.search-input:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:-1px}.search-esc-hint{color:var(--color-text-dim);font-size:9px;border:1px solid var(--color-text-dim);padding:1px 4px;flex-shrink:0}.search-results{flex:1;overflow-y:auto;max-height:400px}.search-result-item{display:flex;align-items:center;padding:10px 20px;cursor:pointer;gap:14px;border-left:2px solid transparent;border-right:2px solid transparent;border-top:1px solid transparent;border-bottom:1px solid var(--color-border-dim)}.search-result-item:hover,.search-result-item.selected{background:var(--color-nav-active);border-color:var(--color-green-primary)}.search-result-icon{color:var(--color-text-secondary);font-size:14px;flex-shrink:0;width:20px;text-align:center}.search-result-item.selected .search-result-icon,.search-result-icon.icon-bright{color:var(--color-green-primary)}.search-result-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.search-result-name{color:var(--color-text-primary);font-size:12px;font-weight:var(--font-weight-normal);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-item.selected .search-result-name{font-weight:var(--font-weight-semibold)}.search-result-name mark{background:none;color:var(--color-green-primary);text-decoration:underline}.search-result-path{color:var(--color-text-secondary);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-date{color:var(--color-text-dim);font-size:10px;flex-shrink:0;text-align:right}.search-building,.search-no-results{padding:24px 16px;color:var(--color-text-dim);font-size:12px;text-align:center}.search-footer{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;border-top:1px solid var(--color-border-dim)}.search-footer-hints{color:var(--color-text-dim);font-size:9px}.search-footer-hints kbd{display:inline;font-family:var(--font-family-mono);font-size:9px;color:var(--color-text-secondary)}.search-footer-count{color:var(--color-text-dim);font-size:9px}@media(max-width:768px){.search-palette{width:calc(100vw - 32px)}.search-backdrop{padding-top:80px}}.context-menu{position:absolute;z-index:1100;min-width:180px;padding:var(--spacing-xs) 0;overflow:hidden;background-color:var(--color-background);border:var(--border-thickness) solid var(--color-border);border-radius:0;box-shadow:0 4px 16px #00000080,var(--glow-green)}.context-menu-item{display:flex;align-items:center;gap:var(--spacing-xs);width:100%;padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-primary);text-align:left;cursor:pointer;background:transparent;border:none;transition:background-color .15s ease}.context-menu-item:hover,.context-menu-item:focus{background-color:var(--color-green-darker);outline:none}.context-menu-item:focus-visible{outline:2px solid var(--color-green-primary);outline-offset:-2px}.context-menu-item-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.context-menu-item--destructive,.context-menu-item--destructive .context-menu-item-icon{color:var(--color-error)}.context-menu-item--destructive:hover,.context-menu-item--destructive:focus{background-color:var(--color-error-dim)}.context-menu-divider{height:1px;margin:var(--spacing-xs) 0;background-color:var(--color-border-dim)}.modal-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background-color:#000000d9;overflow:hidden}.matrix-canvas--modal{position:absolute;z-index:0}.modal-container{position:relative;z-index:1;width:100%;max-width:500px;max-height:90vh;margin:var(--spacing-md);overflow:hidden;background-color:var(--color-background);border:var(--border-thickness) solid var(--color-border);border-radius:0;box-shadow:0 25px 50px -12px #0000007f,var(--glow-green)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);border-bottom:var(--border-thickness) solid var(--color-border-dim)}.modal-title{margin:0;font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-primary)}.modal-close{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;margin-left:auto;font-size:1.25rem;font-weight:var(--font-weight-normal);line-height:1;color:var(--color-text-secondary);cursor:pointer;background:transparent;border:var(--border-thickness) solid var(--color-border);border-radius:0;transition:background-color .15s ease,color .15s ease,border-color .15s ease,border-width .15s ease}.modal-close:hover{background-color:var(--color-green-darker);color:var(--color-text-primary)}.modal-close:focus-visible{border-color:var(--color-green-primary);border-width:2px;box-shadow:var(--glow-green);outline:none}.modal-body{padding:var(--spacing-md);overflow-y:auto;max-height:calc(90vh - 80px);color:var(--color-text-primary)}.dialog-content{display:flex;flex-direction:column;gap:var(--spacing-md)}.dialog-message{margin:0;font-family:var(--font-family-mono);font-size:var(--font-size-sm);line-height:1.6;color:var(--color-text-primary)}.dialog-field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.dialog-label{font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary)}.dialog-input{width:100%;padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-family-mono);font-size:var(--font-size-sm);line-height:1.5;color:var(--color-text-primary);background-color:var(--color-background);border:var(--border-thickness) solid var(--color-border);border-radius:0;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.dialog-input:focus{border-color:var(--color-green-primary);border-width:2px;padding:calc(var(--spacing-xs) - 1px) calc(var(--spacing-sm) - 1px);box-shadow:var(--glow-green);outline:none}.dialog-input--error{border-color:var(--color-error)}.dialog-input--error:focus{border-color:var(--color-error);box-shadow:0 0 10px #ef444466}.dialog-input:disabled{opacity:.5;cursor:not-allowed}.dialog-input::placeholder{color:var(--color-text-secondary)}.dialog-error{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-error)}.dialog-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-top:var(--spacing-xs)}.dialog-button{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-xs) var(--spacing-md);font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);line-height:1.5;border:var(--border-thickness) solid transparent;border-radius:0;cursor:pointer;transition:background-color .15s ease,box-shadow .15s ease,border-color .15s ease,border-width .15s ease}.dialog-button:disabled{opacity:.5;cursor:not-allowed}.dialog-button:focus-visible{border-color:var(--color-green-primary);border-width:2px;padding:calc(var(--spacing-xs) - 1px) calc(var(--spacing-md) - 1px);outline:none}.dialog-button--secondary{color:var(--color-text-primary);background-color:transparent;border:var(--border-thickness) solid var(--color-border)}.dialog-button--secondary:hover:not(:disabled){background-color:var(--color-green-darker);box-shadow:var(--glow-green)}.dialog-button--primary{color:var(--color-black);background-color:var(--color-green-primary);font-weight:var(--font-weight-semibold)}.dialog-button--primary:hover:not(:disabled){box-shadow:var(--glow-green)}.dialog-button--destructive{color:var(--color-black);background-color:var(--color-error);font-weight:var(--font-weight-semibold)}.dialog-button--destructive:hover:not(:disabled){box-shadow:0 0 10px #ef444499}.move-dialog-folder-list{max-height:300px;overflow-y:auto;border:var(--border-thickness) solid var(--color-border);background-color:var(--color-background)}.move-dialog-folder-item{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-family-mono);font-size:var(--font-size-sm);cursor:pointer;transition:background-color .15s ease;border-bottom:var(--border-thickness) solid var(--color-border-dim)}.move-dialog-folder-item:last-child{border-bottom:none}.move-dialog-folder-item:hover:not(.move-dialog-folder-item--disabled){background-color:var(--color-green-darker)}.move-dialog-folder-item:focus{outline:none;background-color:var(--color-green-darker)}.move-dialog-folder-item--selected{background-color:var(--color-green-darker);border-left:2px solid var(--color-green-primary)}.move-dialog-folder-item--selected:hover{background-color:var(--color-green-darker)}.move-dialog-folder-item--disabled{color:var(--color-green-dim);cursor:not-allowed;opacity:.6}.move-dialog-folder-item--disabled:hover{background-color:transparent}.move-dialog-folder-icon{font-weight:var(--font-weight-semibold);color:var(--color-text-primary);flex-shrink:0}.move-dialog-folder-item--disabled .move-dialog-folder-icon{color:var(--color-green-dim)}.move-dialog-folder-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--color-text-primary)}.move-dialog-folder-item--disabled .move-dialog-folder-name{color:var(--color-green-dim)}.move-dialog-empty{padding:var(--spacing-md);text-align:center;font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.shared-move-dialog-folder-item:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:-1px}.shared-move-dialog-readonly-badge{margin-left:auto;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);flex-shrink:0}.details-rows{display:flex;flex-direction:column;gap:0}.details-row{display:flex;flex-direction:column;gap:2px;padding:var(--spacing-xs) 0;border-bottom:var(--border-thickness) solid var(--color-border-dim)}.details-row:last-child{border-bottom:none}.details-label{font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);flex-shrink:0}.details-value{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-primary);word-break:break-all;line-height:1.5}.details-value--dim{color:var(--color-text-muted)}.details-value--redacted{color:var(--color-text-dim);font-style:italic}.details-copyable{display:flex;align-items:flex-start;gap:var(--spacing-xs)}.details-copyable-text{flex:1;min-width:0;font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-primary);word-break:break-all;line-height:1.5}.details-copy-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:2px 6px;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);background:transparent;border:var(--border-thickness) solid var(--color-border-dim);cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.details-copy-btn:hover{color:var(--color-text-primary);background-color:var(--color-green-darker);border-color:var(--color-border)}.details-copy-btn:focus-visible{outline:2px solid var(--color-green-primary);outline-offset:2px}.details-copy-btn--copied{color:var(--color-green-primary);border-color:var(--color-green-primary)}.details-section-header{font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.1em;color:var(--color-green-dim);padding:var(--spacing-sm) 0 var(--spacing-xs) 0;border-bottom:var(--border-thickness) solid var(--color-border-dim);margin-top:var(--spacing-xs)}.details-loading{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary);font-style:italic}.details-type-badge{display:inline-block;padding:1px 6px;font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em}.details-type-badge--file{color:var(--color-text-primary)}.details-type-badge--folder{color:var(--color-green-primary)}.details-version-section{margin-top:var(--spacing-xs)}.details-version-list{display:flex;flex-direction:column;gap:0;max-height:300px;overflow-y:auto}.details-version-entry{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-xs) 0;border-bottom:var(--border-thickness) solid var(--color-border-dim)}.details-version-entry:last-child{border-bottom:none}.details-version-info{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;font-family:var(--font-family-mono);font-size:var(--font-size-sm)}.details-version-number{color:var(--color-green-primary);font-weight:var(--font-weight-semibold);min-width:24px}.details-version-date{color:var(--color-text-primary)}.details-version-size{color:var(--color-text-secondary)}.details-version-mode{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase}.details-version-actions{display:flex;gap:var(--spacing-xs)}.details-version-btn{padding:2px 8px;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);background:transparent;border:var(--border-thickness) solid var(--color-border-dim);cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.details-version-btn:hover:not(:disabled){color:var(--color-text-primary);background-color:var(--color-green-darker);border-color:var(--color-border)}.details-version-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.details-version-btn:disabled{opacity:.4;cursor:not-allowed}.details-version-btn--restore:hover:not(:disabled){color:var(--color-green-primary);border-color:var(--color-green-primary)}.details-version-btn--delete:hover:not(:disabled){color:var(--color-red, #ff4444);border-color:var(--color-red, #ff4444)}.details-version-confirm{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-xs);border:var(--border-thickness) solid var(--color-border);background:#0000004d}.details-version-confirm-text{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.4}.details-version-confirm-actions{display:flex;gap:var(--spacing-xs)}.details-version-confirm-btn{padding:2px 10px;font-family:var(--font-family-mono);font-size:var(--font-size-xs);background:transparent;border:var(--border-thickness) solid var(--color-border-dim);cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.details-version-confirm-btn--yes{color:var(--color-green-primary);border-color:var(--color-green-dim)}.details-version-confirm-btn--yes:hover{background-color:var(--color-green-darker);border-color:var(--color-green-primary)}.details-version-confirm-btn--yes:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.details-version-confirm-btn--no{color:var(--color-text-muted);border-color:var(--color-border-dim)}.details-version-confirm-btn--no:hover{color:var(--color-text-secondary);border-color:var(--color-border)}.details-version-confirm-btn--no:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.details-version-error{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-red, #ff4444);padding:var(--spacing-xs) 0}.share-dialog-backdrop .modal-container{max-width:600px}.share-dialog{display:flex;flex-direction:column;gap:var(--spacing-md)}.share-tab-bar{display:flex;gap:0;border-bottom:var(--border-thickness) solid var(--color-border-dim)}.share-tab{flex:1;padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.05em;color:var(--color-text-muted);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .15s ease,border-color .15s ease}.share-tab:hover{color:var(--color-text-secondary)}.share-tab:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:-1px}.share-tab--active{color:var(--color-green-primary);border-bottom-color:var(--color-green-primary)}.share-input-section{display:flex;flex-direction:column;gap:var(--spacing-xs)}.share-input-label{font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary)}.share-input-row{display:flex;gap:var(--spacing-xs)}.share-input{flex:1;min-width:0;padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-primary);background-color:var(--color-background);border:var(--border-thickness) solid var(--color-border-dim);transition:border-color .15s ease}.share-input::placeholder{color:var(--color-text-muted)}.share-input:focus{border-color:var(--color-green-primary);outline:none}.share-input:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.share-input--error{border-color:var(--color-error)}.share-submit-btn{flex-shrink:0;padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-green-primary);background:transparent;border:var(--border-thickness) solid var(--color-green-dim);cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.share-submit-btn:hover:not(:disabled){background-color:var(--color-green-darker);border-color:var(--color-green-primary)}.share-submit-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.share-submit-btn:disabled{opacity:.4;cursor:not-allowed}.share-error{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-error);line-height:1.4}.share-success{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-green-primary);line-height:1.4}.share-progress{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.4}.share-progress-bar{width:100%;height:3px;margin-top:var(--spacing-xs);background-color:var(--color-border-dim);overflow:hidden}.share-progress-fill{height:100%;background-color:var(--color-green-primary);transition:width .2s ease}.share-recipients-section{display:flex;flex-direction:column;gap:var(--spacing-xs)}.share-recipients-header{font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.1em;color:var(--color-green-dim);padding-bottom:var(--spacing-xs);border-bottom:var(--border-thickness) solid var(--color-border-dim)}.share-recipients-list{display:flex;flex-direction:column;gap:0;max-height:200px;overflow-y:auto}.share-recipients-empty{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);padding:var(--spacing-xs) 0}.share-recipient{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:var(--spacing-xs) 0;border-bottom:var(--border-thickness) solid var(--color-border-dim)}.share-recipient:last-child{border-bottom:none}.share-recipient-key{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-primary);word-break:break-all}.share-revoke-btn{flex-shrink:0;padding:2px 8px;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:#ef4444;background:transparent;border:var(--border-thickness) solid rgb(239 68 68 / 30%);cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.share-revoke-btn:hover:not(:disabled){background-color:#ef44441a;border-color:#ef4444}.share-revoke-btn:focus-visible{outline:1px solid #ef4444;outline-offset:1px}.share-revoke-btn:disabled{opacity:.4;cursor:not-allowed}.share-revoke-confirm{display:flex;align-items:center;gap:var(--spacing-xs);flex-shrink:0}.share-revoke-confirm-text{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.share-revoke-confirm-btn{padding:2px 6px;font-family:var(--font-family-mono);font-size:var(--font-size-xs);background:transparent;border:var(--border-thickness) solid var(--color-border-dim);cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.share-revoke-confirm-btn--yes{color:#ef4444;border-color:#ef44444d}.share-revoke-confirm-btn--yes:hover{background-color:#ef44441a;border-color:#ef4444}.share-revoke-confirm-btn--yes:focus-visible{outline:1px solid #ef4444;outline-offset:1px}.share-revoke-confirm-btn--no{color:var(--color-text-muted);border-color:var(--color-border-dim)}.share-revoke-confirm-btn--no:hover{color:var(--color-text-secondary);border-color:var(--color-border)}.share-revoke-confirm-btn--no:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.share-permission-selector{margin:var(--spacing-md) 0}.share-permission-label{font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);letter-spacing:.05em;text-transform:uppercase;display:block;margin-bottom:var(--spacing-xs)}.share-permission-toggle{display:flex;gap:0}.share-perm-btn{font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.05em;padding:4px 8px;border:1px solid var(--color-border-dim);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:color .15s,border-color .15s,background-color .15s}.share-perm-btn--active{color:var(--color-green-primary);border-color:var(--color-green-primary);background-color:var(--color-green-darker)}.share-perm-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.recipient-perm-read{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);margin-left:var(--spacing-xs);flex-shrink:0}.recipient-perm-write{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-green-primary);margin-left:var(--spacing-xs);flex-shrink:0}.share-recipient-actions{display:flex;align-items:center;gap:var(--spacing-xs);flex-shrink:0;margin-left:auto}.share-action-btn{flex-shrink:0;padding:2px 8px;font-family:var(--font-family-mono);font-size:var(--font-size-xs);background:transparent;border:var(--border-thickness) solid var(--color-border-dim);cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.share-action-btn:disabled{opacity:.4;cursor:not-allowed}.share-action-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.share-upgrade-btn{color:var(--color-green-primary);border-color:var(--color-green-dim)}.share-upgrade-btn:hover:not(:disabled){background:#00d0841a}.share-downgrade-btn{color:var(--color-warning);border-color:var(--color-warning-dim)}.share-downgrade-btn:hover:not(:disabled){background:#eab3081a}.share-recipients-loading{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);font-style:italic;padding:var(--spacing-xs) 0}.invite-link-tab{display:flex;flex-direction:column;gap:var(--spacing-md)}.invite-link-create{display:flex;justify-content:flex-start}.invite-link-create-btn{padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-green-primary);background:transparent;border:var(--border-thickness) solid var(--color-green-dim);cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.invite-link-create-btn:hover:not(:disabled){background-color:var(--color-green-darker);border-color:var(--color-green-primary)}.invite-link-create-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.invite-link-create-btn:disabled{opacity:.4;cursor:not-allowed}.invite-link-list-section{display:flex;flex-direction:column;gap:var(--spacing-xs)}.invite-link-list{display:flex;flex-direction:column;gap:0;max-height:200px;overflow-y:auto}.invite-link-item{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:var(--spacing-xs) 0;border-bottom:var(--border-thickness) solid var(--color-border-dim)}.invite-link-item:last-child{border-bottom:none}.invite-link-info{display:flex;align-items:center;gap:var(--spacing-sm);min-width:0}.invite-status-badge{flex-shrink:0;padding:1px 6px;font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.05em;color:var(--color-green-primary);border:var(--border-thickness) solid var(--color-green-dim)}.invite-link-meta{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invite-link-actions{flex-shrink:0}.upload-zone-wrapper{width:100%}.upload-zone{display:flex;align-items:center;justify-content:center;min-height:120px;padding:var(--spacing-lg);border:var(--border-thickness) dashed var(--color-border);border-radius:0;background-color:var(--color-background);cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.upload-zone:hover{border-color:var(--color-green-primary);background-color:var(--color-green-darker)}.upload-zone:focus-within{outline:2px solid var(--color-green-primary);outline-offset:2px}.upload-zone-active{border-color:var(--color-green-primary);border-style:solid;background-color:var(--color-green-darker);box-shadow:var(--glow-green)}.upload-zone-uploading{cursor:default;opacity:.7}.upload-zone-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);text-align:center;color:var(--color-text-secondary)}.upload-zone-icon{font-size:2rem;line-height:1;color:var(--color-text-secondary)}.upload-zone-text{margin:0;font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-primary)}.upload-zone-error{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-xs);margin-top:var(--spacing-xs);padding:var(--spacing-sm);font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-error);background-color:var(--color-error-dim);border:var(--border-thickness) solid var(--color-error);border-radius:0}.upload-zone-error-dismiss{padding:0;font-size:1rem;font-weight:var(--font-weight-normal);line-height:1;color:inherit;cursor:pointer;background:transparent;border:none;opacity:.7}.upload-zone-error-dismiss:hover{opacity:1}.upload-inline-row{cursor:default}.upload-inline-row:not(.upload-inline-row--error):not(.upload-inline-row--complete):hover{background-color:var(--color-green-darker)}.upload-inline-row--complete{background-color:#00d08414}.upload-inline-row--error{background-color:var(--color-error-dim)}.upload-inline-icon{color:var(--color-green-dim)}.upload-inline-row--error .upload-inline-icon{color:var(--color-error)}.upload-inline-name-wrapper{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.upload-inline-progress-track{height:3px;background-color:var(--color-border-dim);overflow:hidden;width:100%}.upload-inline-progress-fill{height:100%;background-color:var(--color-green-primary);transition:width .2s ease,opacity .15s ease}.upload-inline-progress-fill[data-status=complete]{background-color:var(--color-green-primary)}.upload-inline-progress-fill[data-status=error]{background-color:var(--color-error)}@keyframes upload-inline-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.upload-inline-progress-track--encrypting{background:linear-gradient(90deg,var(--color-border-dim) 30%,var(--color-green-primary) 50%,var(--color-border-dim) 70%);background-size:200% 100%;animation:upload-inline-shimmer 1.5s ease-in-out infinite}.upload-inline-progress-track--encrypting .upload-inline-progress-fill{opacity:0}@media(prefers-reduced-motion:reduce){.upload-inline-progress-fill,.upload-inline-progress-track--encrypting{animation:none;transition:none}.upload-inline-progress-track--encrypting .upload-inline-progress-fill{opacity:1}}.upload-inline-actions{display:flex;gap:var(--spacing-xs);align-items:center;justify-content:flex-end}.upload-inline-btn{padding:2px var(--spacing-xs);font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);background:transparent;border:none;cursor:pointer;transition:color .15s ease}.upload-inline-btn:hover{color:var(--color-text-primary)}.upload-inline-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.upload-inline-btn--retry{color:var(--color-green-primary)}.upload-inline-btn--retry:hover{box-shadow:var(--glow-green)}.upload-inline-btn--retry:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.text-editor-modal .modal-container{max-width:800px}.text-editor-modal .modal-body{display:flex;flex-direction:column;padding:0;max-height:calc(90vh - 60px)}.text-editor-body{display:flex;flex-direction:column;flex:1;min-height:0}.text-editor-textarea{flex:1;width:100%;min-height:400px;padding:var(--spacing-md);font-family:var(--font-family-mono);font-size:var(--font-size-sm);line-height:1.6;color:var(--color-text-primary);background-color:#0a0a0a;border:none;border-bottom:var(--border-thickness) solid var(--color-border-dim);outline:none;resize:none;tab-size:2}.text-editor-textarea:focus{box-shadow:inset 0 0 20px #00d0840d}.text-editor-textarea:disabled{opacity:.5;cursor:not-allowed}.text-editor-textarea::placeholder{color:var(--color-text-secondary)}.text-editor-status{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-md);font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);border-bottom:var(--border-thickness) solid var(--color-border-dim);flex-shrink:0}.text-editor-status--modified{color:var(--color-warning)}.text-editor-footer{display:flex;gap:var(--spacing-sm);justify-content:flex-end;padding:var(--spacing-sm) var(--spacing-md);flex-shrink:0}.text-editor-loading{display:flex;align-items:center;justify-content:center;min-height:400px;font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.text-editor-error{padding:var(--spacing-xs) var(--spacing-md);font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-error)}.image-preview-modal .modal-container{max-width:900px}.image-preview-modal .modal-body{display:flex;flex-direction:column;padding:0;max-height:calc(90vh - 60px)}.image-preview-body{display:flex;flex-direction:column;flex:1;min-height:0}.image-preview-container{flex:1;display:flex;align-items:center;justify-content:center;min-height:300px;max-height:calc(80vh - 120px);padding:var(--spacing-md);background-color:#0a0a0a;overflow:auto}.image-preview-img{max-width:100%;max-height:100%;object-fit:contain;image-rendering:auto}.image-preview-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border-top:var(--border-thickness) solid var(--color-border-dim);flex-shrink:0}.image-preview-info{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.image-preview-loading{display:flex;align-items:center;justify-content:center;min-height:300px;font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.image-preview-error{display:flex;align-items:center;justify-content:center;min-height:300px;padding:var(--spacing-md);font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-error)}.pdf-preview-modal .modal-container{max-width:900px;width:95vw}.pdf-preview-modal .modal-body{display:flex;flex-direction:column;padding:0;max-height:calc(90vh - 60px)}.pdf-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-xs) var(--spacing-md);border-bottom:var(--border-thickness) solid var(--color-border-dim);flex-shrink:0}.pdf-toolbar-left{display:flex;align-items:center;gap:var(--spacing-sm);min-width:0}.pdf-toolbar-right{display:flex;align-items:center;gap:var(--spacing-xs);flex-shrink:0}.pdf-tag{background-color:var(--color-green-primary);color:var(--color-black);padding:2px 6px;font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;flex-shrink:0}.pdf-filename{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.pdf-btn{background:transparent;border:var(--border-thickness) solid var(--color-border);color:var(--color-text-primary);font-family:var(--font-family-mono);font-size:var(--font-size-xs);padding:2px 8px;cursor:pointer;transition:background-color .15s ease;white-space:nowrap}.pdf-btn:hover:not(:disabled){background-color:var(--color-green-darker)}.pdf-btn:disabled{opacity:.4;cursor:not-allowed}.pdf-zoom-display{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);min-width:32px;text-align:center}.pdf-canvas-area{flex:1;overflow-y:auto;background-color:#0a0f0d;padding:var(--spacing-md);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.pdf-canvas-area canvas{display:block;box-shadow:0 2px 8px #0000007f}.pdf-footer{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md);border-top:var(--border-thickness) solid var(--color-border-dim);flex-shrink:0}.pdf-page-info{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);min-width:80px;text-align:center}.pdf-preview-loading{display:flex;align-items:center;justify-content:center;min-height:300px;font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.pdf-preview-error{display:flex;align-items:center;justify-content:center;min-height:300px;padding:var(--spacing-md);font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-error)}.audio-player-modal .modal-container{max-width:600px;width:95vw}.audio-player-modal .modal-body{display:flex;flex-direction:column;padding:0}.audio-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-xs) var(--spacing-md);border-bottom:var(--border-thickness) solid var(--color-border-dim);flex-shrink:0}.audio-toolbar-left{display:flex;align-items:center;gap:var(--spacing-sm);min-width:0}.audio-toolbar-right{display:flex;align-items:center;gap:var(--spacing-xs);flex-shrink:0}.audio-tag{background-color:var(--color-green-primary);color:var(--color-black);padding:2px 6px;font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;flex-shrink:0}.audio-filename{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.audio-btn{background:transparent;border:var(--border-thickness) solid var(--color-border);color:var(--color-text-primary);font-family:var(--font-family-mono);font-size:var(--font-size-xs);padding:2px 8px;cursor:pointer;transition:background-color .15s ease;white-space:nowrap}.audio-btn:hover:not(:disabled){background-color:var(--color-green-darker)}.audio-btn:disabled{opacity:.4;cursor:not-allowed}.audio-viz-area{height:200px;background-color:#0a0f0d;display:flex;align-items:center;justify-content:center;position:relative}.audio-viz-area canvas{width:100%;height:100%;display:block}.audio-viz-placeholder{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.audio-progress-wrapper{padding:var(--spacing-xs) var(--spacing-md)}.audio-progress-track{height:4px;background:var(--color-green-darker);cursor:pointer;position:relative}.audio-progress-fill{position:absolute;top:0;left:0;height:100%;background:var(--color-green-primary);pointer-events:none}.audio-timestamps{display:flex;justify-content:space-between;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-top:4px}.audio-controls{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);flex-wrap:wrap}.audio-controls-group,.audio-volume-wrapper{display:flex;align-items:center;gap:var(--spacing-xs)}.audio-volume-label{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.audio-volume-slider{-webkit-appearance:none;appearance:none;width:80px;height:4px;background:var(--color-green-darker);outline:none;cursor:pointer}.audio-volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:10px;height:10px;background:var(--color-green-primary);cursor:pointer}.audio-volume-slider::-moz-range-thumb{width:10px;height:10px;background:var(--color-green-primary);border:none;cursor:pointer}.audio-volume-slider::-moz-range-track{background:var(--color-green-darker);height:4px}.audio-preview-loading{display:flex;align-items:center;justify-content:center;min-height:300px;font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.audio-decrypt-loading{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm)}.audio-decrypt-label{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.audio-decrypt-progress-track{width:200px;height:4px;background:var(--color-green-darker);position:relative}.audio-decrypt-progress-fill{position:absolute;top:0;left:0;height:100%;background:var(--color-green-primary);transition:width .3s ease}.audio-decrypt-percent{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-green-primary)}.audio-preview-error{display:flex;align-items:center;justify-content:center;min-height:300px;padding:var(--spacing-md);font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-error)}.video-player-modal .modal-container{max-width:960px;width:95vw}.video-player-modal .modal-body{display:flex;flex-direction:column;padding:0}.video-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-xs) var(--spacing-md);border-bottom:var(--border-thickness) solid var(--color-border-dim);flex-shrink:0}.video-toolbar-left{display:flex;align-items:center;gap:var(--spacing-sm);min-width:0}.video-toolbar-right{display:flex;align-items:center;gap:var(--spacing-xs);flex-shrink:0}.video-tag{background-color:var(--color-green-primary);color:var(--color-black);padding:2px 6px;font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;flex-shrink:0}.video-filename{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.video-btn{background:transparent;border:var(--border-thickness) solid var(--color-border);color:var(--color-text-primary);font-family:var(--font-family-mono);font-size:var(--font-size-xs);padding:2px 8px;cursor:pointer;transition:background-color .15s ease;white-space:nowrap}.video-btn:hover:not(:disabled){background-color:var(--color-green-darker)}.video-btn:disabled{opacity:.4;cursor:not-allowed}.video-screen{position:relative;background:#000;overflow:hidden}.video-screen video{width:100%;display:block;max-height:calc(80vh - 200px)}.video-play-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;cursor:pointer;background:#0000004d;transition:background-color .15s ease}.video-play-overlay:hover{background:#0000007f}.video-play-icon{font-size:48px;color:var(--color-green-primary);font-family:var(--font-family-mono);-webkit-user-select:none;user-select:none}.video-resolution{position:absolute;bottom:8px;right:8px;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);background:#0009;padding:2px 6px;pointer-events:none}.video-controls-bar{padding:var(--spacing-xs) var(--spacing-md);background:#000c;transition:opacity .3s ease}.video-controls-bar--hidden{opacity:0;pointer-events:none}.video-progress-track{height:4px;background:var(--color-green-darker);cursor:pointer;position:relative}.video-progress-fill{position:absolute;top:0;left:0;height:100%;background:var(--color-green-primary);pointer-events:none}.video-progress-buffered{position:absolute;top:0;left:0;height:100%;background:#00d08433;pointer-events:none}.video-control-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);margin-top:4px}.video-control-left,.video-control-right{display:flex;align-items:center;gap:var(--spacing-xs)}.video-time-display{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:nowrap}.video-volume-wrapper{display:flex;align-items:center;gap:var(--spacing-xs)}.video-volume-label{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.video-volume-slider{-webkit-appearance:none;appearance:none;width:60px;height:4px;background:var(--color-green-darker);outline:none;cursor:pointer}.video-volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:10px;height:10px;background:var(--color-green-primary);cursor:pointer}.video-volume-slider::-moz-range-thumb{width:10px;height:10px;background:var(--color-green-primary);border:none;cursor:pointer}.video-volume-slider::-moz-range-track{background:var(--color-green-darker);height:4px}.video-cipher-badge{position:absolute;top:8px;right:8px;font-family:var(--font-family-mono);font-size:10px;letter-spacing:.08em;color:var(--color-green-primary);background:#0009;padding:2px 6px;pointer-events:none;border:1px solid rgb(0 208 132 / 30%)}.video-preview-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm);min-height:300px;font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.video-decrypt-label{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.video-decrypt-progress-track{width:200px;height:4px;background:var(--color-green-darker);position:relative}.video-decrypt-progress-fill{position:absolute;top:0;left:0;height:100%;background:var(--color-green-primary);transition:width .3s ease}.video-decrypt-percent{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-green-primary)}.video-preview-error{display:flex;align-items:center;justify-content:center;min-height:300px;padding:var(--spacing-md);font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-error)}.shared-ro-badge{font-family:var(--font-mono);font-size:.65rem;color:var(--color-text-dim);margin-left:var(--spacing-xs);opacity:.7;-webkit-user-select:none;user-select:none}.shared-rw-badge{font-family:var(--font-family-mono);font-size:.65rem;color:var(--color-green-primary);opacity:.9;margin-left:var(--spacing-xs);-webkit-user-select:none;user-select:none}.shared-by-cell{font-family:var(--font-mono);font-size:.75rem;color:var(--color-green-primary);opacity:.8;min-width:120px;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-list-header-shared-by{font-family:var(--font-mono);font-size:.75rem;color:var(--color-text-dim);opacity:.6;min-width:120px;max-width:160px;padding:0 var(--spacing-sm)}.shared-list-row{cursor:pointer}.shared-list-row:hover{background:#00ff800d}.shared-list-row:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:-1px}.shared-browser .file-list-row{display:grid;grid-template-columns:1fr 120px 180px;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:background-color .15s ease;border-bottom:var(--border-thickness) solid var(--color-border-dim);font-family:var(--font-family-mono)}.shared-browser .file-list-row:last-child{border-bottom:none}.shared-browser .file-list-row:hover{background-color:var(--color-green-darker)}.shared-browser .file-list-row:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:-1px}.shared-browser .file-list-row--parent{cursor:pointer}.shared-browser .file-list-row--parent:hover{background-color:var(--color-green-darker)}.shared-browser .file-list-row--parent:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:-1px}.shared-browser .file-list-cell{display:flex;align-items:center;min-width:0}.shared-browser .file-list-cell-name{display:flex;align-items:center;gap:6px;min-width:0}.shared-browser .file-list-cell-size,.shared-browser .file-list-cell-date{display:flex;align-items:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.shared-browser .file-icon{font-size:var(--font-size-sm);flex-shrink:0}.shared-browser .file-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--color-text-primary);font-size:var(--font-size-sm)}.shared-error{font-family:var(--font-mono);font-size:.85rem;color:var(--color-red, #ef4444);padding:var(--spacing-md) var(--spacing-lg);text-align:center;opacity:.9}.shared-browser .file-browser-toolbar{border-bottom:1px solid rgb(0 255 128 / 10%)}.shared-inline-input{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-green-primary);border-bottom:var(--border-thickness) solid var(--color-border-dim)}.shared-inline-input-label{white-space:nowrap;opacity:.8}.shared-inline-input-field{background:transparent;border:none;border-bottom:1px solid var(--color-green-primary);color:var(--color-text-primary);font-family:var(--font-family-mono);font-size:var(--font-size-sm);padding:2px 4px;outline:none;flex:1;min-width:100px}.shared-inline-input-field:focus{border-bottom-color:var(--color-green-primary)}.shared-inline-input-field::placeholder{color:var(--color-text-muted);opacity:.6}.shared-inline-rename-field{background:transparent;border:none;border-bottom:1px solid var(--color-green-primary);color:var(--color-text-primary);font-family:var(--font-family-mono);font-size:var(--font-size-sm);padding:2px 4px;outline:none;min-width:80px;flex:1}.shared-inline-rename-field:focus{border-bottom-color:var(--color-green-primary)}.shared-browser.shared-drag-over{outline:2px dashed var(--color-green-primary);outline-offset:-4px;background:#00d08408}.bin-browser .file-browser-toolbar{border-bottom:1px solid rgb(0 255 128 / 10%)}.toolbar-btn--destructive{color:var(--color-error);border-color:var(--color-error);background:transparent}.toolbar-btn--destructive:hover:not(:disabled){box-shadow:0 0 8px #f003}.toolbar-btn--destructive:focus-visible{outline:2px solid var(--color-error);outline-offset:1px}.toolbar-btn--destructive:disabled{opacity:.5;cursor:not-allowed}.bin-list-header{display:grid;grid-template-columns:1fr 180px 100px 80px 90px;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border-bottom:var(--border-thickness) solid var(--color-border);font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-primary);background-color:var(--color-background)}.bin-column-header{display:flex;align-items:center;background:none;border:none;padding:0;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.bin-column-header:hover{color:var(--color-green-primary)}.bin-column-header:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.bin-column-path{cursor:default}.bin-column-path:hover{color:inherit}.bin-list-item{display:grid;grid-template-columns:1fr 180px 100px 80px 90px;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:background-color .15s ease;border-bottom:var(--border-thickness) solid var(--color-border-dim);font-family:var(--font-family-mono)}.bin-list-item:last-child{border-bottom:none}.bin-list-item:hover{background-color:var(--color-green-darker)}.bin-list-item:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:-1px}.bin-list-item--selected,.bin-list-item--selected:hover{background-color:var(--color-green-darker)}.bin-list-item--warning{border-left:2px solid var(--color-warning, #f59e0b)}.bin-list-item-name{display:flex;align-items:center;gap:6px;min-width:0}.bin-list-item-checkbox{display:inline;cursor:pointer;font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-right:4px;flex-shrink:0}.bin-list-item-checkbox:hover{color:var(--color-green-primary)}.bin-list-item-checkbox:focus-visible{outline:2px solid var(--color-green-primary);outline-offset:1px}.bin-list-item-icon{font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);flex-shrink:0;color:var(--color-text-primary)}.bin-list-item-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--color-text-primary);font-size:var(--font-size-sm)}.bin-list-item-path{display:flex;align-items:center;color:var(--color-text-dim);font-size:var(--font-size-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bin-list-item-deleted,.bin-list-item-size,.bin-list-item-remaining{display:flex;align-items:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.bin-list-item-remaining--warning{color:var(--color-warning, #f59e0b);font-weight:var(--font-weight-semibold)}.bin-context-menu{z-index:1000}.bin-empty-state{cursor:default}.bin-empty-state:hover{border-color:var(--color-border);background-color:transparent}.bin-error{font-family:var(--font-family-mono);font-size:.85rem;color:var(--color-error);padding:var(--spacing-md) var(--spacing-lg);text-align:center;opacity:.9}.bin-selection-bar .toolbar-btn--secondary:first-of-type{color:var(--color-green-primary);border-color:var(--color-green-dim)}.vault-export{display:flex;flex-direction:column;gap:var(--spacing-sm)}.vault-export__title{font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.05em}.vault-export__description{font-family:var(--font-family-mono);font-size:var(--font-size-sm);line-height:1.6;color:var(--color-text-secondary);margin:0}.vault-export__button{align-self:flex-start;padding:var(--spacing-xs) var(--spacing-md);font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-black);background-color:var(--color-green-primary);border:none;border-radius:0;cursor:pointer;text-transform:lowercase;letter-spacing:.05em;transition:box-shadow .2s ease,transform .1s ease}.vault-export__button:hover{box-shadow:var(--glow-green);transform:translateY(-1px)}.vault-export__button:active{transform:translateY(0)}.vault-export__error{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-error);margin:0}.invite-page{position:relative;display:flex;align-items:center;justify-content:center;min-height:100vh;padding:var(--spacing-md)}.invite-card{position:relative;z-index:1;width:100%;max-width:480px;padding:var(--spacing-xl) var(--spacing-lg);background-color:var(--color-surface);border:var(--border-thickness) solid var(--color-green-dim);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.invite-card--error{border-color:#ef4444}.invite-card__title{font-family:var(--font-family-mono);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-green-primary);letter-spacing:.1em;text-transform:uppercase;margin:0}.invite-card__tagline{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);letter-spacing:.05em;margin-top:calc(-1 * var(--spacing-xs))}.invite-card__message{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-primary);text-align:center;line-height:1.5}.invite-card__sub-message{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:center;line-height:1.5}.invite-card__auth-area,.invite-card__auth-methods{width:100%;display:flex;flex-direction:column;gap:var(--spacing-sm)}.invite-card__auth-divider{display:flex;align-items:center;justify-content:center;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-muted)}.invite-card__loading{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary);text-align:center}.invite-card__claiming,.invite-card__success{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-green-primary);text-align:center}.invite-card__error{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:#ef4444;text-align:center;line-height:1.5}.invite-card__error-detail{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:center}.invite-card__home-btn{padding:var(--spacing-xs) var(--spacing-md);font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-green-primary);background:transparent;border:var(--border-thickness) solid var(--color-green-dim);cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.invite-card__home-btn:hover{background-color:var(--color-green-darker);border-color:var(--color-green-primary)}.invite-card__home-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.invite-card__login-error{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:#ef4444;text-align:center}.matrix-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1}.app-shell{display:grid;grid-template-rows:auto auto 1fr auto;grid-template-columns:180px 1fr;grid-template-areas:"header header" "banner banner" "sidebar main" "footer footer";height:100vh;overflow:hidden;position:relative}.app-header{grid-area:header;display:flex;justify-content:space-between;align-items:center;padding:12px 24px;background-color:#0000007f;border-bottom:1px solid var(--color-border-dim);position:relative;z-index:2}.header-left{display:flex;align-items:center;gap:8px}.header-prompt{font-size:20px;font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.header-logo{font-size:14px;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);letter-spacing:1px}.header-right{display:flex;align-items:center;gap:8px}.header-search-btn{background:none;border:1px solid var(--color-border-dim);color:var(--color-text-secondary);font-family:var(--font-family-mono);font-size:11px;padding:4px 8px;cursor:pointer;display:flex;align-items:center;gap:4px}.header-search-btn:hover{color:var(--color-green-primary);border-color:var(--color-green-primary)}.header-search-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.header-search-btn kbd{font-family:var(--font-family-mono);font-size:10px;border:1px solid currentcolor;padding:0 3px;border-radius:2px}.app-sidebar{grid-area:sidebar;display:flex;flex-direction:column;justify-content:space-between;background-color:#0000007f;border-right:1px solid var(--color-border-dim);overflow-y:auto;position:relative;z-index:1}.sidebar-nav{padding:16px;display:flex;flex-direction:column;gap:4px}.sidebar-footer{padding:16px}.nav-item{display:flex;align-items:center;gap:12px;padding:8px 12px;font-size:12px;font-weight:var(--font-weight-normal);color:var(--color-text-secondary);text-decoration:none;border-radius:0;transition:background-color .15s ease,color .15s ease}.nav-item:hover{color:var(--color-text-primary);text-decoration:none}.nav-item--active{background-color:var(--color-nav-active);color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.nav-item-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.storage-quota{display:flex;flex-direction:column;gap:6px}.storage-quota-bar{width:100%;height:6px;background-color:var(--color-border-dim);border-radius:3px;overflow:hidden}.storage-quota-fill{height:100%;background-color:var(--color-green-primary);transition:width .3s ease}.storage-quota-text{font-size:10px;color:var(--color-text-secondary)}.app-main{grid-area:main;overflow-y:auto;background-color:#000000e5;position:relative;z-index:1}.app-footer{grid-area:footer;display:flex;justify-content:space-between;align-items:center;padding:8px 24px;background-color:#0000007f;border-top:1px solid var(--color-border-dim);position:relative;z-index:1}.footer-left,.footer-center,.footer-right{display:flex;align-items:center}.footer-center{gap:16px}.footer-copyright{font-size:9px;color:var(--color-border-dim)}.footer-link{font-size:9px;color:var(--color-text-secondary);text-decoration:none;transition:color .15s ease}.footer-link:hover{color:var(--color-text-primary);text-decoration:none}.status-indicator{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--color-text-secondary)}.status-indicator-dot{width:6px;height:6px;border-radius:50%}.status-indicator-dot--connected{background-color:var(--color-green-primary);box-shadow:var(--glow-green)}.status-indicator-dot--disconnected{background-color:var(--color-error)}.status-indicator-dot--loading{background-color:var(--color-text-secondary);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.status-indicator-text{font-family:var(--font-family-mono)}.user-menu{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:4px;padding:4px 8px;font-size:11px;color:var(--color-text-secondary);cursor:pointer;transition:color .15s ease;background:none;border:none;font-family:var(--font-family-mono)}.user-menu-trigger:hover{color:var(--color-text-primary)}.user-menu-caret{font-size:8px}.user-menu-dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:120px;background-color:var(--color-background);border:1px solid var(--color-border-dim);border-radius:4px;padding:4px 0;z-index:100}.user-menu-dropdown:before{content:"";position:absolute;top:-4px;left:0;right:0;height:4px}.user-menu-item{display:block;width:100%;padding:8px 12px;font-size:11px;font-family:var(--font-family-mono);color:var(--color-text-secondary);text-align:left;text-decoration:none;background:none;border:none;cursor:pointer;transition:color .15s ease,background-color .15s ease}.user-menu-item:hover{color:var(--color-text-primary);background-color:var(--color-nav-active);text-decoration:none}@media(max-width:768px){.app-shell{grid-template-columns:1fr;grid-template-areas:"header" "banner" "main" "footer"}.app-sidebar{display:none}}.file-browser-content{display:flex;flex-direction:column;height:100%;overflow-x:hidden;overflow-y:auto;background-color:var(--color-background);position:relative}.file-browser-content--drag-active{outline:2px dashed var(--color-green-primary);outline-offset:-2px;background-color:#00d08408}.file-browser-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-sm) 20px;background-color:var(--color-toolbar-bg)}.file-browser-toolbar button,.toolbar-button{padding:var(--spacing-xs) var(--spacing-md);font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);border-radius:0;cursor:pointer;transition:box-shadow .15s ease}.toolbar-button--primary,.file-browser-toolbar .btn-primary{background-color:var(--color-green-primary);color:var(--color-black);border:none;font-weight:var(--font-weight-semibold)}.toolbar-button--primary:hover,.file-browser-toolbar .btn-primary:hover{box-shadow:var(--glow-green)}.toolbar-button--secondary,.file-browser-toolbar .btn-secondary{background-color:transparent;color:var(--color-text-primary);border:var(--border-thickness) solid var(--color-border)}.toolbar-button--secondary:hover,.file-browser-toolbar .btn-secondary:hover{box-shadow:var(--glow-green)}.file-browser-loading{display:flex;align-items:center;justify-content:center;height:200px;color:var(--color-text-secondary);font-family:var(--font-family-mono)}.file-browser-loading-spinner{font-size:var(--font-size-sm)}.file-browser-actions{display:flex;align-items:center;gap:.5rem;margin-left:auto}.toolbar-btn{display:flex;align-items:center;gap:.5rem;padding:6px 12px;background:transparent;border:var(--border-thickness) solid;border-radius:0;font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);cursor:pointer;transition:box-shadow .15s ease}.toolbar-btn--primary{color:var(--color-text-primary);border-color:var(--color-text-primary)}.toolbar-btn--primary:hover:not(:disabled){box-shadow:var(--glow-green)}.toolbar-btn--secondary{color:var(--color-text-secondary);border-color:var(--color-border-dim)}.toolbar-btn--secondary:hover:not(:disabled){box-shadow:0 0 8px #00d08433}.toolbar-btn:disabled{opacity:.5;cursor:not-allowed}.file-browser-new-folder-button{display:flex;align-items:center;gap:.5rem;padding:6px 12px;background:transparent;border:var(--border-thickness) solid var(--color-text-primary);border-radius:0;color:var(--color-text-primary);font-family:var(--font-family-mono);font-size:var(--font-size-xs);cursor:pointer;transition:box-shadow .15s ease}.file-browser-new-folder-button:hover:not(:disabled){box-shadow:var(--glow-green)}.file-browser-new-folder-button:disabled{opacity:.5;cursor:not-allowed}.file-browser-new-folder-button svg{flex-shrink:0}.toolbar-upload{display:flex}.toolbar-upload .upload-zone-wrapper{width:auto}.toolbar-upload .upload-zone{min-height:auto;padding:6px 12px;border-style:solid;border-color:var(--color-border-dim)}.toolbar-upload .upload-zone:hover{border-color:var(--color-border-dim);box-shadow:0 0 8px #00d08433}.toolbar-upload .upload-zone-content{flex-direction:row;gap:6px}.toolbar-upload .upload-zone-icon{font-size:var(--font-size-md);color:var(--color-text-secondary)}.toolbar-upload .upload-zone-text{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.file-list{display:flex;flex-direction:column;flex:1;min-height:0;border:var(--border-thickness) solid var(--color-border)}.file-list-header{display:grid;grid-template-columns:1fr 120px 180px;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border-bottom:var(--border-thickness) solid var(--color-border);font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-primary);background-color:var(--color-background)}.file-list-header-name{display:flex;align-items:center}.file-list-header-actions{display:none}.file-list-body{flex:1;min-height:0;overflow-y:auto}.file-list-item{display:grid;grid-template-columns:1fr 120px 180px;grid-template-areas:"name size date";gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:background-color .15s ease;border-bottom:var(--border-thickness) solid var(--color-border-dim);font-family:var(--font-family-mono)}.file-list-item:last-child{border-bottom:none}.file-list-item:hover,.file-list-item--selected,.file-list-item--selected:hover{background-color:var(--color-green-darker)}.file-list-item--drag-over{background-color:var(--color-green-darker);outline:1px dashed var(--color-green-primary);outline-offset:-1px}.file-list-item--parent{cursor:pointer}.file-list-item--parent:hover{background-color:var(--color-green-darker)}.file-list-item-row-top{grid-area:name;display:flex;align-items:center;gap:6px;min-width:0}.file-list-item-row-bottom{display:contents}.file-list-item-icon{font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);flex-shrink:0;color:var(--color-text-primary)}.file-list-item-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--color-text-primary);font-size:var(--font-size-sm)}.file-list-item-size{grid-area:size;display:flex;align-items:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.file-list-item-date{grid-area:date;display:flex;align-items:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.vault-syncing{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;margin:var(--spacing-lg);text-align:center;padding:var(--spacing-lg)}.vault-syncing-ascii{font-family:var(--font-family-mono);font-size:var(--font-size-xs);line-height:1.6;color:var(--color-green-primary);margin:0 0 var(--spacing-md) 0;white-space:pre;opacity:.8}.vault-syncing-bar{width:200px;height:4px;background:var(--color-border);margin-bottom:var(--spacing-md);overflow:hidden}.vault-syncing-bar-fill{width:40%;height:100%;background:var(--color-green-primary);animation:vault-syncing-slide 1.5s ease-in-out infinite}@keyframes vault-syncing-slide{0%{transform:translate(-100%)}to{transform:translate(350%)}}@media(prefers-reduced-motion:reduce){.vault-syncing-bar-fill{animation:none}}.vault-syncing-text{font-family:var(--font-family-mono);font-size:var(--font-size-sm);margin:0 0 var(--spacing-xs) 0;color:var(--color-text-muted)}.vault-syncing-hint{font-family:var(--font-family-mono);font-size:var(--font-size-xs);margin:0;color:var(--color-text-dim);text-transform:lowercase}.empty-state{display:flex;align-items:center;justify-content:center;min-height:300px;border:var(--border-thickness) dashed var(--color-border);border-radius:0;margin:var(--spacing-lg);cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.empty-state:hover,.empty-state-drag-active{border-color:var(--color-green-primary);background-color:var(--color-green-darker)}.empty-state-uploading{opacity:.7;pointer-events:none}.empty-state-content{text-align:center;padding:var(--spacing-lg)}.empty-state-ascii{font-family:var(--font-family-mono);font-size:var(--font-size-xs);line-height:1.2;color:var(--color-green-primary);margin:0 0 var(--spacing-md) 0;white-space:pre}.empty-state-icon{font-size:2rem;display:block;margin-bottom:var(--spacing-md);color:var(--color-text-secondary)}.empty-state-text{font-family:var(--font-family-mono);font-size:var(--font-size-sm);margin:0 0 var(--spacing-xs) 0;color:var(--color-text-muted)}.empty-state-hint{font-family:var(--font-family-mono);font-size:var(--font-size-xs);margin:0;color:var(--color-text-dim);text-transform:lowercase}.file-list-header-checkbox{display:inline;cursor:pointer;font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);margin-right:6px;flex-shrink:0}.file-list-header-checkbox:hover{color:var(--color-green-primary)}.file-list-header-checkbox:focus-visible{outline:2px solid var(--color-green-primary);outline-offset:1px}.file-list-item-checkbox{display:inline;cursor:pointer;font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-right:4px;flex-shrink:0}.file-list-item-checkbox:hover{color:var(--color-green-primary)}.file-list-item-checkbox:focus-visible{outline:2px solid var(--color-green-primary);outline-offset:1px}.selection-action-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-xs) 20px;background-color:var(--color-green-darker);border-top:var(--border-thickness) solid var(--color-green-primary);font-family:var(--font-family-mono);font-size:var(--font-size-sm)}.selection-action-bar-info{display:flex;align-items:center;gap:var(--spacing-sm)}.selection-action-bar-count{color:var(--color-green-primary);font-weight:var(--font-weight-semibold)}.selection-action-bar-clear{background:none;border:none;color:var(--color-text-secondary);font-family:var(--font-family-mono);font-size:var(--font-size-xs);cursor:pointer;padding:2px 4px}.selection-action-bar-clear:hover{color:var(--color-text-primary)}.selection-action-bar-clear:focus-visible{outline:2px solid var(--color-green-primary);outline-offset:1px}.selection-action-bar-actions{display:flex;align-items:center;gap:var(--spacing-xs)}.selection-action-bar .toolbar-btn--secondary{color:var(--color-green-primary);border-color:var(--color-green-dim)}.selection-action-bar .toolbar-btn--secondary:hover:not(:disabled){box-shadow:var(--glow-green)}.selection-action-bar .toolbar-btn--secondary:focus-visible{outline:2px solid var(--color-green-primary);outline-offset:1px}.selection-action-bar .selection-action-bar-delete{color:var(--color-error);border-color:var(--color-error)}.selection-action-bar .selection-action-bar-delete:hover:not(:disabled){box-shadow:0 0 8px #f003}.selection-action-bar-delete:focus-visible{outline:2px solid var(--color-error);outline-offset:1px}.context-menu-header{padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-green-primary);text-transform:uppercase;letter-spacing:.05em}.file-list-item-mobile-actions{display:none;align-items:center;justify-content:center;flex-shrink:0}.file-list-item-action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:var(--border-thickness) solid var(--color-border-dim);color:var(--color-text-secondary);font-family:var(--font-family-mono);font-size:var(--font-size-md);cursor:pointer;transition:color .15s ease,border-color .15s ease;line-height:1;letter-spacing:2px}.file-list-item-action-btn:hover,.file-list-item-action-btn:focus{color:var(--color-text-primary);border-color:var(--color-green-primary)}.file-list-item-action-btn:focus-visible{outline:2px solid var(--color-green-primary);outline-offset:1px}.breadcrumb-nav{display:flex;align-items:center;font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary);padding:var(--spacing-xs) 0;min-height:2.5rem}.breadcrumb-prefix{color:var(--color-text-secondary)}.breadcrumb-separator{color:var(--color-text-secondary);margin:0 2px}.breadcrumb-item{background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;padding:2px 4px;font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);border-radius:0;transition:color .15s ease}.breadcrumb-item:hover{color:var(--color-text-primary)}.breadcrumb-item:focus{outline:none;background-color:var(--color-green-darker)}.breadcrumb-item:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.breadcrumb-item--current{font-weight:var(--font-weight-semibold)}.breadcrumb-item--drag-over{background-color:var(--color-green-darker);outline:1px dashed var(--color-green-primary);outline-offset:1px}.breadcrumb-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:400px}.breadcrumbs{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) 0;font-family:var(--font-family-mono);font-size:var(--font-size-sm);min-height:2.5rem;color:var(--color-text-primary)}.breadcrumbs-back{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;background-color:transparent;border:var(--border-thickness) solid var(--color-border);border-radius:0;color:var(--color-text-primary);cursor:pointer;transition:background-color .15s ease,box-shadow .15s ease}.breadcrumbs-back:hover{background-color:var(--color-green-darker);box-shadow:var(--glow-green)}.breadcrumbs-current{font-weight:var(--font-weight-semibold);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}.breadcrumb-path{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-primary);padding:var(--spacing-xs) 0;min-height:2.5rem;display:flex;align-items:center}@media(max-width:768px){.breadcrumb-nav{padding:var(--spacing-xs)}.breadcrumb-item{font-size:var(--font-size-sm);max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.breadcrumb-text{max-width:200px;font-size:var(--font-size-sm)}}@media(max-width:768px){.app-shell{grid-template-columns:1fr;grid-template-areas:"header" "main" "footer"}.app-header{padding:var(--spacing-xs) var(--spacing-sm)}.app-footer{padding:var(--spacing-xs) var(--spacing-sm);justify-content:center;gap:var(--spacing-sm)}.footer-center{display:none}.footer-left,.footer-right{flex-shrink:0}.file-browser-content{padding:0}.file-browser-toolbar{flex-direction:column;align-items:stretch;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm)}.file-browser-toolbar .breadcrumb-nav{min-width:0;overflow:hidden}.file-browser-toolbar .file-browser-actions{margin-left:0;justify-content:flex-end}.file-list-header,.file-list-item{grid-template-columns:1fr auto;grid-template-areas:"name actions"}.file-list-header-date,.file-list-item-date,.file-list-header-size,.file-list-item-size{display:none}.shared-browser .file-list-header,.shared-browser .file-list-row{grid-template-columns:1fr}.shared-browser .file-list-cell-size,.shared-browser .file-list-cell-date,.shared-browser .shared-by-cell,.shared-browser .file-list-header-shared-by{display:none}.file-list-item-mobile-actions{display:flex;grid-area:actions}.file-list-header-actions{display:block;grid-area:actions;width:32px}.empty-state{margin:var(--spacing-md);min-height:200px}.selection-action-bar{flex-wrap:wrap;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm)}.selection-action-bar-actions{flex-wrap:wrap}.context-menu{min-width:220px}.context-menu-item{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}.modal-container{max-width:calc(100vw - 2rem);margin:var(--spacing-md)}.login-container{padding:var(--spacing-md)}.login-container h1{font-size:1.5rem}}@media(min-width:769px){.app-sidebar{position:relative;transform:none}}.file-list-item{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}@media(pointer:coarse){.file-list-item:active,.folder-tree-item:active{background-color:var(--color-green-darker)}}.login-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:var(--spacing-lg);text-align:center;position:relative;overflow:hidden}.login-panel{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-xl) 48px;background-color:#0009;border:1px solid rgb(0 208 132 / 10%)}.login-container h1{font-family:var(--font-family-mono);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--spacing-xs);letter-spacing:.05em}.login-container h1:before{content:"> ";color:var(--color-text-primary)}.login-container .tagline{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-md);text-transform:uppercase;letter-spacing:.1em}.login-container .login-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-lg);max-width:400px}.login-button{padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);background-color:var(--color-green-primary);color:var(--color-black);border:none;border-radius:0;cursor:pointer;transition:box-shadow .2s ease,transform .1s ease;text-transform:uppercase;letter-spacing:.05em}.login-button:hover{box-shadow:var(--glow-green);transform:translateY(-1px)}.login-button:active{transform:translateY(0)}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-button--api-down{background-color:transparent;border:1px solid var(--color-error);color:var(--color-error);opacity:.7;cursor:not-allowed}.login-button--api-down:hover{box-shadow:none;transform:none}.login-methods{display:flex;flex-direction:column;align-items:stretch;gap:var(--spacing-md);width:100%;max-width:320px}.login-divider{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text-secondary);font-size:var(--font-size-xs);text-transform:lowercase;letter-spacing:.1em}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background-color:var(--color-border-dim)}.google-login-wrapper{display:flex;flex-direction:column;align-items:stretch}.google-login-btn{padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);background-color:transparent;color:var(--color-text-primary);border:1px solid var(--color-green-primary);border-radius:0;cursor:pointer;transition:box-shadow .2s ease,background-color .2s ease,transform .1s ease;text-transform:uppercase;letter-spacing:.05em}.google-login-btn:hover:not(:disabled){background-color:#00d0841a;box-shadow:var(--glow-green);transform:translateY(-1px)}.google-login-btn:active:not(:disabled){transform:translateY(0)}.google-login-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:2px}.google-login-btn:disabled{opacity:.4;cursor:not-allowed}.google-login-btn--loading{color:var(--color-text-secondary);border-color:var(--color-text-secondary)}.google-login-btn--not-configured{color:var(--color-text-dim);border-color:var(--color-text-dim)}.google-native-btn-container{display:flex;justify-content:center}.email-login-form{display:flex;flex-direction:column;align-items:stretch}.email-login-step{display:flex;flex-direction:column;gap:var(--spacing-xs)}.email-login-input,.otp-input{padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-family-mono);font-size:var(--font-size-sm);background-color:transparent;color:var(--color-text-primary);border:1px solid var(--color-border-dim);border-radius:0;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.email-login-input::placeholder,.otp-input::placeholder{color:var(--color-text-dim)}.email-login-input:focus,.otp-input:focus{border-color:var(--color-green-primary);box-shadow:var(--glow-green)}.email-login-input:focus-visible,.otp-input:focus-visible{outline:none;border-color:var(--color-green-primary);box-shadow:var(--glow-green)}.email-login-input:disabled,.otp-input:disabled{opacity:.4}.otp-input{text-align:center;letter-spacing:.3em;font-size:var(--font-size-md)}.email-login-submit{padding:var(--spacing-xs) var(--spacing-lg);font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);background-color:var(--color-green-primary);color:var(--color-black);border:none;border-radius:0;cursor:pointer;transition:box-shadow .2s ease,transform .1s ease;text-transform:uppercase;letter-spacing:.05em}.email-login-submit:hover:not(:disabled){box-shadow:var(--glow-green);transform:translateY(-1px)}.email-login-submit:active:not(:disabled){transform:translateY(0)}.email-login-submit:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:2px}.email-login-submit:disabled{opacity:.5;cursor:not-allowed}.email-login-submit--loading{background-color:var(--color-green-dim);color:var(--color-text-primary)}.otp-header{display:flex;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.otp-back-btn{padding:2px var(--spacing-xs);font-family:var(--font-family-mono);font-size:var(--font-size-sm);background-color:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border-dim);border-radius:0;cursor:pointer;transition:color .2s ease,border-color .2s ease}.otp-back-btn:hover:not(:disabled){color:var(--color-text-primary);border-color:var(--color-green-primary)}.otp-back-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.otp-email-display{font-size:var(--font-size-xs);color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.otp-resend-btn{padding:var(--spacing-xs) 0;font-family:var(--font-family-mono);font-size:var(--font-size-xs);background-color:transparent;color:var(--color-text-secondary);border:none;cursor:pointer;text-align:center;transition:color .2s ease}.otp-resend-btn:hover:not(:disabled){color:var(--color-text-primary)}.otp-resend-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.otp-resend-btn:disabled{cursor:default;color:var(--color-text-dim)}.wallet-login-wrapper{display:flex;flex-direction:column;align-items:stretch}.wallet-login-btn{padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);background-color:transparent;color:var(--color-text-primary);border:1px solid var(--color-green-primary);border-radius:0;cursor:pointer;transition:box-shadow .2s ease,background-color .2s ease,transform .1s ease;text-transform:uppercase;letter-spacing:.05em}.wallet-login-btn:hover:not(:disabled){background-color:#00d0841a;box-shadow:var(--glow-green);transform:translateY(-1px)}.wallet-login-btn:active:not(:disabled){transform:translateY(0)}.wallet-login-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:2px}.wallet-login-btn:disabled{opacity:.4;cursor:not-allowed}.wallet-login-btn--loading{color:var(--color-text-secondary);border-color:var(--color-text-secondary)}.wallet-connector-list{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-sm);border:1px solid var(--color-border-dim);font-family:var(--font-family-mono)}.wallet-connector-header{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.wallet-connector-option{padding:var(--spacing-xs) var(--spacing-sm);background:none;border:1px solid var(--color-border-dim);font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-primary);cursor:pointer;text-align:left;transition:border-color .2s ease,color .2s ease}.wallet-connector-option:hover:not(:disabled){border-color:var(--color-green-primary);color:var(--color-green-primary)}.wallet-connector-option:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.wallet-connector-option:disabled{opacity:.4;cursor:not-allowed}.wallet-connector-cancel{padding:var(--spacing-xs) 0;background:none;border:none;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-dim);cursor:pointer;text-align:center;margin-top:var(--spacing-xs)}.wallet-connector-cancel:hover:not(:disabled){color:var(--color-text-secondary)}.wallet-connector-cancel:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.wallet-connector-cancel:disabled{cursor:not-allowed;opacity:.4}.wallet-login-status{font-size:var(--font-size-xs);color:var(--color-text-secondary);padding:var(--spacing-xs) 0}.wallet-no-providers{font-size:var(--font-size-xs);color:var(--color-text-dim);padding:var(--spacing-xs) 0}.login-error{margin-top:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-error);background-color:#ef444414;border:1px solid rgb(239 68 68 / 20%);text-align:center}.login-loading{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);text-align:center;margin-top:var(--spacing-xs)}.login-footer{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:8px 24px;background-color:#0000007f;border-top:1px solid var(--color-border-dim);z-index:1}.login-footer .footer-link:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.login-note{margin-top:var(--spacing-lg);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.dashboard-container{display:flex;flex-direction:column;min-height:100vh;background-color:var(--color-background)}.dashboard-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border-bottom:var(--border-thickness) solid var(--color-border);background-color:var(--color-background)}.dashboard-header h1,.dashboard-header .app-title{font-family:var(--font-family-mono);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.logout-link{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary);text-decoration:none;text-transform:lowercase}.logout-link:hover{color:var(--color-text-primary);text-decoration:none}.dashboard-main{display:flex;flex:1;background-color:var(--color-background)}.placeholder-text{color:var(--color-text-secondary);font-style:normal;margin-top:var(--spacing-md)}.api-status{position:fixed;bottom:var(--spacing-md);right:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-xs);font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:lowercase}.status-dot{width:8px;height:8px;border-radius:50%}.status-dot.online{background-color:var(--color-green-primary);box-shadow:0 0 6px var(--color-green-primary)}.status-dot.offline{background-color:var(--color-error);box-shadow:0 0 6px var(--color-error)}.status-dot.loading{background-color:var(--color-text-secondary)}.settings-content{padding:var(--spacing-lg)}.settings-title{font-family:var(--font-family-mono);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-lg)}.settings-section{background-color:var(--color-background-dark, var(--color-background));border:var(--border-thickness) solid var(--color-border);padding:var(--spacing-md)}.settings-section-heading{font-family:var(--font-family-mono);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-green-primary);margin-bottom:var(--spacing-xs);text-transform:lowercase}.settings-section-description{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.linked-methods{font-family:var(--font-family-mono)}.linked-methods-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-xs);text-transform:lowercase}.linked-methods-description{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.linked-methods-loading{font-size:var(--font-size-xs);color:var(--color-text-secondary);padding:var(--spacing-md) 0}.linked-methods-error{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);margin-bottom:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-error);background-color:#ef444414;border:1px solid rgb(239 68 68 / 20%)}.linked-methods-error-dismiss{background:none;border:none;color:var(--color-error);font-family:var(--font-family-mono);font-size:var(--font-size-xs);cursor:pointer;padding:0;flex-shrink:0}.linked-methods-error-dismiss:hover{opacity:.8}.linked-methods-error-dismiss:focus-visible{outline:1px solid var(--color-error);outline-offset:1px}.linked-methods-list{list-style:none;padding:0;margin:0 0 var(--spacing-md) 0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.linked-methods-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm);border:1px solid var(--color-border-dim);transition:border-color .2s ease}.linked-methods-item:hover{border-color:var(--color-border)}.linked-methods-item-info{display:flex;align-items:center;gap:var(--spacing-sm);min-width:0}.linked-methods-item-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-green-primary);border:1px solid var(--color-green-primary);flex-shrink:0}.linked-methods-item-details{display:flex;flex-direction:column;gap:2px;min-width:0}.linked-methods-item-type{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.05em}.linked-methods-item-identifier{font-size:var(--font-size-xs);color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.linked-methods-item-actions{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}.linked-methods-badge{font-size:10px;color:var(--color-green-primary);text-transform:uppercase;letter-spacing:.1em}.linked-methods-unlink-btn{background:none;border:none;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-dim);cursor:pointer;padding:2px 4px;transition:color .2s ease}.linked-methods-unlink-btn:hover:not(:disabled){color:var(--color-error)}.linked-methods-unlink-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.linked-methods-unlink-btn:disabled{opacity:.3;cursor:not-allowed}.linked-methods-unlink-hint{font-size:10px;color:var(--color-text-dim);white-space:nowrap}.linked-methods-available{margin-bottom:var(--spacing-md)}.linked-methods-available-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);margin-bottom:var(--spacing-xs);text-transform:lowercase}.linked-methods-available-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.linked-methods-link-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:none;border:1px solid var(--color-border-dim);font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);cursor:pointer;transition:border-color .2s ease,color .2s ease}.linked-methods-link-btn:hover:not(:disabled){border-color:var(--color-green-primary);color:var(--color-green-primary)}.linked-methods-link-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.linked-methods-link-btn:disabled{opacity:.4;cursor:not-allowed}.linked-methods-link-icon{font-weight:var(--font-weight-bold)}.linked-methods-link-flow{margin-bottom:var(--spacing-md);padding:var(--spacing-sm);border:1px solid var(--color-green-primary);background-color:#00d08408}.linked-methods-link-header{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-xs);color:var(--color-green-primary);margin-bottom:var(--spacing-xs)}.linked-methods-link-cancel{background:none;border:none;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-dim);cursor:pointer;padding:2px 4px}.linked-methods-link-cancel:hover{color:var(--color-text-secondary)}.linked-methods-link-cancel:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.linked-methods-link-hint{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:var(--spacing-sm)}.linked-methods-wallet-connectors{display:flex;flex-direction:column;gap:var(--spacing-xs)}.linked-methods-wallet-option{padding:var(--spacing-xs) var(--spacing-sm);background:none;border:1px solid var(--color-border-dim);font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);cursor:pointer;text-align:left;transition:border-color .2s ease,color .2s ease}.linked-methods-wallet-option:hover:not(:disabled){border-color:var(--color-green-primary);color:var(--color-green-primary)}.linked-methods-wallet-option:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.linked-methods-wallet-option:disabled{opacity:.4;cursor:not-allowed}.linked-methods-wallet-no-providers{font-size:var(--font-size-xs);color:var(--color-text-dim);padding:var(--spacing-xs)}.linked-methods-note{font-size:10px;color:var(--color-text-dim);margin-top:var(--spacing-sm)}.settings-tabs{display:flex;gap:0;margin-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border-dim)}.settings-tab{background:none;border:none;border-bottom:2px solid transparent;font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-dim);text-transform:uppercase;letter-spacing:.05em;padding:var(--spacing-xs) var(--spacing-md);cursor:pointer;transition:color .2s ease,border-color .2s ease}.settings-tab:hover{color:var(--color-text-secondary)}.settings-tab:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:-1px}.settings-tab.active{color:var(--color-green-primary);border-bottom-color:var(--color-green-primary)}.settings-pubkey-box{border:1px solid var(--color-green-primary);padding:var(--spacing-sm) var(--spacing-md);margin:var(--spacing-sm) 0;word-break:break-all;font-family:var(--font-family-mono);font-size:.75rem;line-height:1.4;color:var(--color-green-primary);background:transparent}.settings-pubkey-copy{background:transparent;border:1px solid var(--color-green-primary);color:var(--color-green-primary);padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-family-mono);font-size:.75rem;cursor:pointer;text-transform:lowercase}.settings-pubkey-copy:hover{background:var(--color-green-primary);color:var(--color-bg)}.settings-pubkey-copy:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.recovery-phrase-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-xs);padding:var(--spacing-sm);border:1px solid var(--color-border-dim);background-color:#0006;margin:var(--spacing-sm) 0}.recovery-phrase-cell{display:flex;align-items:center;gap:var(--spacing-xs);padding:4px var(--spacing-xs);font-family:var(--font-family-mono);font-size:var(--font-size-xs)}.recovery-phrase-number{color:var(--color-text-dim);font-size:var(--font-size-xs);min-width:18px;text-align:right}.recovery-phrase-word{color:var(--color-green-primary);font-weight:var(--font-weight-semibold)}.mfa-wizard{font-family:var(--font-family-mono)}.mfa-wizard-step-indicator{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.mfa-wizard-step-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:nowrap}.mfa-wizard-progress-bar{display:flex;gap:4px;flex:1}.mfa-wizard-progress-segment{height:3px;flex:1;background-color:var(--color-border-dim);transition:background-color .3s ease}.mfa-wizard-progress-segment.complete{background-color:var(--color-green-primary)}.mfa-wizard-step{display:flex;flex-direction:column;gap:var(--spacing-md)}.mfa-wizard-step-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-green-primary);text-transform:lowercase}.mfa-wizard-step-content{display:flex;flex-direction:column;gap:var(--spacing-sm)}.mfa-wizard-text{font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.6}.mfa-wizard-text-dim{color:var(--color-text-dim)}.mfa-wizard-warning-box{padding:var(--spacing-sm);border:1px solid var(--color-warning);background-color:#f59e0b0d}.mfa-wizard-warning-text{font-size:var(--font-size-xs);color:var(--color-warning);line-height:1.6}.mfa-wizard-danger-box{padding:var(--spacing-sm);border:1px solid #EF4444;background-color:#ef444414;font-size:var(--font-size-xs);color:#ef4444;line-height:1.6}.mfa-wizard-loading{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-text-secondary);padding:var(--spacing-md) 0}.mfa-wizard-spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--color-border-dim);border-top-color:var(--color-green-primary);border-radius:50%;animation:mfa-spin .8s linear infinite}@keyframes mfa-spin{to{transform:rotate(360deg)}}.mfa-wizard-error{padding:var(--spacing-sm);border:1px solid var(--color-error);background-color:#ef444414;font-size:var(--font-size-xs);color:var(--color-error);display:flex;flex-direction:column;gap:var(--spacing-sm)}.mfa-wizard-checkbox{display:flex;align-items:flex-start;gap:var(--spacing-xs);padding:var(--spacing-xs) 0;cursor:pointer;-webkit-user-select:none;user-select:none}.mfa-wizard-checkbox:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:2px}.mfa-wizard-checkbox-box{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-dim);flex-shrink:0}.mfa-wizard-checkbox.checked .mfa-wizard-checkbox-box{color:var(--color-green-primary)}.mfa-wizard-checkbox-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.5}.mfa-wizard-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border-dim)}.mfa-wizard-btn{background:none;border:1px solid var(--color-border-dim);font-family:var(--font-family-mono);font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-md);cursor:pointer;transition:border-color .2s ease,color .2s ease,background-color .2s ease}.mfa-wizard-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.mfa-wizard-btn:disabled{opacity:.3;cursor:not-allowed}.mfa-wizard-btn-primary{color:var(--color-black);background-color:var(--color-green-primary);border-color:var(--color-green-primary)}.mfa-wizard-btn-primary:hover:not(:disabled){background-color:var(--color-green-dim);border-color:var(--color-green-dim)}.mfa-wizard-btn-secondary{color:var(--color-text-secondary);border-color:var(--color-border-dim)}.mfa-wizard-btn-secondary:hover:not(:disabled){color:var(--color-text-primary);border-color:var(--color-text-secondary)}.mfa-wizard-success{display:flex;align-items:center;gap:var(--spacing-sm)}.mfa-wizard-success-icon{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-green-primary)}.mfa-wizard-factor-summary{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border-dim);background-color:#00d08408}.mfa-wizard-factor-count{font-size:var(--font-size-xs);color:var(--color-green-primary)}.security-tab{font-family:var(--font-family-mono)}.security-tab-status{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.security-tab-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.security-tab-status-dot.enabled{background-color:var(--color-green-primary);box-shadow:0 0 6px var(--color-green-primary)}.security-tab-status-dot.disabled{background-color:var(--color-error);box-shadow:0 0 6px var(--color-error)}.security-tab-status-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em}.security-tab-status-label.enabled{color:var(--color-green-primary)}.security-tab-status-label.disabled{color:var(--color-error)}.security-tab-factor-info{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.security-tab-enable{padding:var(--spacing-md);border:1px solid var(--color-border-dim);margin-bottom:var(--spacing-md)}.security-tab-enable-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-xs);text-transform:lowercase}.security-tab-enable-desc{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);line-height:1.6}.security-tab-enable-btn{background-color:var(--color-green-primary);color:var(--color-black);border:1px solid var(--color-green-primary);font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:var(--spacing-xs) var(--spacing-lg);cursor:pointer;transition:background-color .2s ease}.security-tab-enable-btn:hover{background-color:var(--color-green-dim);border-color:var(--color-green-dim)}.security-tab-enable-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:2px}.security-tab-section{margin-bottom:var(--spacing-md)}.security-tab-section-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);text-transform:lowercase;margin-bottom:var(--spacing-sm)}.security-tab-note{font-size:10px;color:var(--color-text-dim);margin-top:var(--spacing-md)}.security-tab-danger-zone{margin-top:var(--spacing-lg);padding:16px 20px;border:1px solid #EF4444;background-color:#001a11}.security-tab-danger-zone-title{font-size:12px;font-weight:600;color:#ef4444;text-transform:lowercase;margin-bottom:var(--spacing-sm);font-family:var(--font-family-mono)}.security-tab-danger-zone-desc{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);line-height:1.6}.security-tab-danger-btn{background-color:transparent;color:#ef4444;border:1px solid #EF4444;font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:600;padding:var(--spacing-xs) var(--spacing-lg);cursor:pointer;transition:background-color .2s ease}.security-tab-danger-btn:hover{background-color:#ef444426}.security-tab-danger-btn:focus-visible{outline:1px solid #EF4444;outline-offset:2px}.security-tab-danger-zone-confirm{display:flex;flex-direction:column;gap:var(--spacing-sm)}.security-tab-danger-zone-warn{font-size:var(--font-size-xs);color:#ef4444;line-height:1.6}.security-tab-danger-zone-warn strong{color:#ef4444;font-weight:700}.security-tab-danger-input{background-color:#000;border:1px solid #EF4444;color:#ef4444;font-family:var(--font-family-mono);font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm);outline:none;max-width:280px}.security-tab-danger-input::placeholder{color:#ef444466}.security-tab-danger-input:focus{border-color:#ef4444;box-shadow:0 0 4px #ef44444d}.security-tab-danger-input:disabled{opacity:.5}.security-tab-danger-error{font-size:10px;color:#ef4444}.security-tab-danger-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-xs)}.security-tab-danger-cancel{background-color:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border-dim);font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:600;padding:var(--spacing-xs) var(--spacing-lg);cursor:pointer;transition:background-color .2s ease}.security-tab-danger-cancel:hover{background-color:#00d0841a;border-color:var(--color-green-primary);color:var(--color-green-primary)}.security-tab-danger-cancel:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:2px}.security-tab-danger-confirm-btn{background-color:#ef4444;color:#000;border:1px solid #EF4444;font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:600;padding:var(--spacing-xs) var(--spacing-lg);cursor:pointer;transition:opacity .2s ease}.security-tab-danger-confirm-btn:hover:not(:disabled){opacity:.85}.security-tab-danger-confirm-btn:focus-visible{outline:1px solid #EF4444;outline-offset:2px}.security-tab-danger-confirm-btn:disabled{opacity:.4;cursor:not-allowed}.authorized-devices-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.authorized-devices-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm);border:1px solid var(--color-border-dim);transition:border-color .2s ease}.authorized-devices-item:hover{border-color:var(--color-border)}.authorized-devices-info{display:flex;flex-direction:column;gap:2px;min-width:0}.authorized-devices-name{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.authorized-devices-meta{font-size:10px;color:var(--color-text-dim)}.authorized-devices-actions{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}.authorized-devices-tag{font-size:10px;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;padding:2px 6px;border:1px solid}.authorized-devices-tag.current{color:var(--color-green-primary);border-color:var(--color-green-primary)}.authorized-devices-tag.authorized{color:var(--color-text-secondary);border-color:var(--color-border-dim)}.authorized-devices-revoke-btn{background:none;border:none;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-dim);cursor:pointer;padding:2px 4px;transition:color .2s ease}.authorized-devices-revoke-btn:hover:not(:disabled){color:var(--color-error)}.authorized-devices-revoke-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.authorized-devices-revoke-btn:disabled{opacity:.3;cursor:not-allowed}.authorized-devices-loading{font-size:var(--font-size-xs);color:var(--color-text-secondary);padding:var(--spacing-md) 0}.authorized-devices-empty{font-size:var(--font-size-xs);color:var(--color-text-dim);padding:var(--spacing-sm) 0}.authorized-devices-warning{font-size:10px;color:var(--color-warning);margin-top:var(--spacing-xs)}.recovery-section{font-family:var(--font-family-mono)}.recovery-section-status{display:flex;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.recovery-section-status-dot{width:8px;height:8px;border-radius:50%;background-color:var(--color-green-primary);box-shadow:0 0 6px var(--color-green-primary);flex-shrink:0}.recovery-section-status-dot.inactive{background-color:var(--color-text-dim);box-shadow:none}.recovery-section-status-label{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.recovery-section-actions{display:flex;gap:var(--spacing-sm)}.recovery-section-btn{background:none;border:1px solid var(--color-border-dim);font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer;transition:border-color .2s ease,color .2s ease}.recovery-section-btn:hover:not(:disabled){border-color:var(--color-green-primary);color:var(--color-green-primary)}.recovery-section-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.recovery-section-btn:disabled{opacity:.3;cursor:not-allowed}.recovery-section-confirm{padding:var(--spacing-sm);border:1px solid var(--color-error);background-color:#ef444414;margin-bottom:var(--spacing-sm)}.recovery-section-confirm-text{font-size:var(--font-size-xs);color:var(--color-error);margin-bottom:var(--spacing-sm);line-height:1.6}.recovery-section-confirm-actions{display:flex;gap:var(--spacing-sm)}.recovery-section-confirm-btn{background:none;border:1px solid;font-family:var(--font-family-mono);font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer}.recovery-section-confirm-btn.danger{color:var(--color-error);border-color:var(--color-error)}.recovery-section-confirm-btn.danger:hover{background-color:#ef44441a}.recovery-section-confirm-btn.danger:focus-visible{outline:1px solid var(--color-error);outline-offset:1px}.recovery-section-confirm-btn.cancel{color:var(--color-text-dim);border-color:var(--color-border-dim)}.recovery-section-confirm-btn.cancel:hover{color:var(--color-text-secondary)}.recovery-section-confirm-btn.cancel:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.recovery-section-new-phrase{margin-top:var(--spacing-sm);padding:var(--spacing-sm);border:1px solid var(--color-green-primary);background-color:#00d08408}.recovery-section-new-phrase-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-green-primary);margin-bottom:var(--spacing-xs);text-transform:lowercase}.device-waiting{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:var(--spacing-md)}.device-waiting-card{width:100%;max-width:420px;padding:var(--spacing-lg);border:1px solid var(--color-border-dim);background-color:#000000e5;font-family:var(--font-family-mono)}.device-waiting-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-green-primary);text-transform:lowercase;margin-bottom:var(--spacing-md)}.device-waiting-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);text-align:center}.device-waiting-spinner{display:inline-block;width:32px;height:32px;border:2px solid var(--color-border-dim);border-top-color:var(--color-green-primary);border-radius:50%;animation:mfa-spin .8s linear infinite}.device-waiting-text{font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.6}.device-waiting-countdown{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-green-primary);letter-spacing:.1em}.device-waiting-countdown.warning{color:#ef4444}.device-waiting-status-message{font-size:var(--font-size-xs);line-height:1.6;padding:var(--spacing-sm);width:100%}.device-waiting-denied{color:var(--color-error);border:1px solid var(--color-error);background-color:#ef444414}.device-waiting-expired{color:var(--color-warning);border:1px solid var(--color-warning);background-color:#f59e0b0d}.device-waiting-error{color:var(--color-error);border:1px solid var(--color-error);background-color:#ef444414}.device-waiting-actions{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);width:100%}.device-waiting-btn{background:none;border:1px solid var(--color-border-dim);font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);padding:var(--spacing-xs) var(--spacing-md);cursor:pointer;transition:border-color .2s ease,color .2s ease}.device-waiting-btn:hover{border-color:var(--color-green-primary);color:var(--color-green-primary)}.device-waiting-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.device-waiting-link{background:none;border:none;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-dim);cursor:pointer;padding:var(--spacing-xs);text-decoration:underline;text-decoration-color:var(--color-text-dim);text-underline-offset:3px;transition:color .2s ease}.device-waiting-link:hover{color:var(--color-text-secondary);text-decoration-color:var(--color-text-secondary)}.device-waiting-link:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:2px}.recovery-input{width:100%;max-width:420px;margin:0 auto;padding:var(--spacing-lg);border:1px solid var(--color-border-dim);background-color:#000000e5;font-family:var(--font-family-mono)}.recovery-input-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-green-primary);text-transform:lowercase;margin-bottom:var(--spacing-md)}.recovery-input-content{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.recovery-input-description{font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.6}.recovery-input-textarea{width:100%;padding:var(--spacing-sm);font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-primary);background-color:var(--color-background);border:1px solid var(--color-border-dim);resize:vertical;line-height:1.6}.recovery-input-textarea::placeholder{color:var(--color-text-dim)}.recovery-input-textarea:focus{outline:none;border-color:var(--color-green-primary);box-shadow:0 0 0 1px var(--color-green-primary)}.recovery-input-textarea:disabled{opacity:.5}.recovery-input-error{font-size:var(--font-size-xs);color:var(--color-error);padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-error);background-color:#ef444414}.recovery-input-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border-dim)}.recovery-input-btn{background:none;border:1px solid var(--color-border-dim);font-family:var(--font-family-mono);font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-md);cursor:pointer;transition:border-color .2s ease,color .2s ease,background-color .2s ease}.recovery-input-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.recovery-input-btn:disabled{opacity:.3;cursor:not-allowed}.recovery-input-btn-primary{color:var(--color-black);background-color:var(--color-green-primary);border-color:var(--color-green-primary)}.recovery-input-btn-primary:hover:not(:disabled){background-color:var(--color-green-dim);border-color:var(--color-green-dim)}.recovery-input-btn-secondary{color:var(--color-text-secondary);border-color:var(--color-border-dim)}.recovery-input-btn-secondary:hover:not(:disabled){color:var(--color-text-primary);border-color:var(--color-text-secondary)}.device-approval-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background-color:#000c}.device-approval-modal{position:relative;z-index:1;width:100%;max-width:440px;margin:var(--spacing-md);background-color:var(--color-background);border:1px solid #00D084;font-family:var(--font-family-mono)}.device-approval-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);border-bottom:1px solid var(--color-border-dim)}.device-approval-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-green-primary);text-transform:uppercase;letter-spacing:.05em}.device-approval-body{padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md)}.device-approval-details{display:flex;flex-direction:column;gap:var(--spacing-xs)}.device-approval-detail-row{display:flex;justify-content:space-between;font-size:var(--font-size-xs)}.device-approval-detail-label{color:var(--color-text-dim);text-transform:uppercase;letter-spacing:.05em}.device-approval-detail-value{color:var(--color-text-primary)}.device-approval-countdown{color:var(--color-green-primary)}.device-approval-countdown.warning{color:#ef4444}.device-approval-warning{font-size:var(--font-size-xs);color:#ef4444;line-height:1.6;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid #EF4444;background-color:#ef444414}.device-approval-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-md);border-top:1px solid var(--color-border-dim)}.device-approval-btn-deny{background:none;border:1px solid #EF4444;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:#ef4444;padding:var(--spacing-xs) var(--spacing-md);cursor:pointer;transition:background-color .2s ease}.device-approval-btn-deny:hover{background-color:#ef44441a}.device-approval-btn-deny:focus-visible{outline:1px solid #EF4444;outline-offset:1px}.device-approval-btn-approve{background-color:#00d084;border:1px solid #00D084;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-black);font-weight:var(--font-weight-semibold);padding:var(--spacing-xs) var(--spacing-md);cursor:pointer;transition:background-color .2s ease}.device-approval-btn-approve:hover{background-color:var(--color-green-dim);border-color:var(--color-green-dim)}.device-approval-btn-approve:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.device-approval-btn-approve:disabled,.device-approval-btn-deny:disabled{opacity:.3;cursor:not-allowed}.mfa-prompt{grid-area:banner;display:flex;align-items:center;gap:var(--spacing-sm);padding:10px var(--spacing-md);background-color:#f59e0b14;border-bottom:1px solid rgb(245 158 11 / 25%);font-family:var(--font-family-mono)}.mfa-prompt-icon{flex-shrink:0}.mfa-prompt-text{flex:1;display:flex;align-items:center;gap:4px;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.mfa-prompt-text strong{color:var(--color-warning);font-weight:var(--font-weight-bold)}.mfa-prompt-desc{color:var(--color-text-secondary)}.mfa-prompt-btn{background:none;border:1px solid var(--color-border-dim);font-family:var(--font-family-mono);font-size:10px;color:var(--color-text-secondary);padding:6px var(--spacing-md);cursor:pointer;white-space:nowrap;transition:border-color .2s ease,color .2s ease}.mfa-prompt-btn:hover{border-color:var(--color-green-primary);color:var(--color-green-primary)}.mfa-prompt-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.mfa-prompt-btn-setup{background-color:var(--color-green-primary);color:var(--color-black);border-color:var(--color-green-primary);font-weight:500}.mfa-prompt-btn-setup:hover{background-color:var(--color-green-dim);border-color:var(--color-green-dim);color:var(--color-black)}.mfa-prompt-dismiss{background:none;border:none;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-dim);cursor:pointer;padding:2px}.mfa-prompt-dismiss:hover{color:var(--color-text-secondary)}.mfa-prompt-dismiss:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.sync-indicator{display:flex;align-items:center;padding:4px 8px}.sync-indicator-icon{width:16px;height:16px;color:var(--color-text-secondary)}.sync-indicator-icon--spinning{animation:spin 1s linear infinite;color:var(--color-green-primary)}.sync-indicator-icon--success{color:var(--color-green-primary)}.sync-indicator-icon--error,.sync-indicator-icon--conflict{color:var(--color-warning, #f59e0b)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.offline-banner{display:flex;align-items:center;gap:8px;padding:8px 16px;background-color:var(--color-warning-bg, #3d2e0a);color:var(--color-warning-text, #fcd34d);font-size:12px;font-family:var(--font-family-mono)}.offline-banner-icon{width:16px;height:16px;flex-shrink:0}.settings-storage{padding:var(--spacing-md) 0}.storage-mode-selector{border:none;padding:0;margin:var(--spacing-md) 0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.storage-mode-option{display:flex;flex-direction:column;gap:4px}.storage-mode-option label{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer}.storage-mode-option input[type=radio]{accent-color:var(--color-green-primary);width:14px;height:14px}.storage-mode-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-secondary)}.storage-mode-option input[type=radio]:checked+.storage-mode-label{color:var(--color-text-primary)}.storage-mode-hint{font-size:var(--font-size-xs);color:var(--color-text-dim);margin:0;padding-left:22px}.storage-provider-config{margin-top:var(--spacing-lg)}.storage-field{display:flex;flex-direction:column;gap:4px;margin-bottom:var(--spacing-sm)}.storage-field-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:lowercase}.storage-field-modified{color:var(--color-warning)}.storage-input{background:transparent;border:1px solid var(--color-border-dim);color:var(--color-text-primary);font-family:var(--font-family-mono);font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm);width:100%;box-sizing:border-box}.storage-input:focus{outline:none;border-color:var(--color-border);box-shadow:0 0 0 1px var(--glow-green)}.storage-input:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.storage-input::placeholder{color:var(--color-text-muted, #8b9a8f)}.connection-test{margin-top:var(--spacing-xs)}.connection-test-btn{background:transparent;border:1px solid var(--color-border-dim);color:var(--color-text-secondary);font-family:var(--font-family-mono);font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer;margin-top:var(--spacing-xs)}.connection-test-btn:hover{border-color:var(--color-border);color:var(--color-text-primary)}.connection-test-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.connection-test-btn:disabled{opacity:.5;cursor:not-allowed}.connection-test-spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--color-border-dim);border-top-color:var(--color-green-primary);border-radius:50%;animation:mfa-spin .8s linear infinite;vertical-align:middle;margin-left:var(--spacing-xs)}.connection-test-result{margin-top:var(--spacing-xs);font-family:var(--font-family-mono);font-size:var(--font-size-sm)}.connection-test-success{color:var(--color-text-primary)}.connection-test-error{color:var(--color-error, #ef4444)}.connection-test-cors-instructions{margin-top:var(--spacing-xs);padding:var(--spacing-sm);border:1px solid var(--color-border-dim);font-size:var(--font-size-xs);white-space:pre-wrap;overflow-x:auto}.storage-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.storage-save-btn{background:var(--color-green-primary);color:#000;border:none;font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:var(--spacing-xs) var(--spacing-md);cursor:pointer}.storage-save-btn:disabled{opacity:.3;cursor:not-allowed}.storage-save-btn:hover:not(:disabled){opacity:.9}.storage-save-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:2px}.storage-discard-btn{background:transparent;border:1px solid var(--color-border-dim);color:var(--color-text-dim);font-family:var(--font-family-mono);font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-md);cursor:pointer}.storage-discard-btn:hover{border-color:var(--color-border);color:var(--color-text-secondary)}.storage-discard-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.storage-quota-info{display:flex;align-items:center;gap:var(--spacing-xs)}.storage-quota-advisory-badge{font-size:var(--font-size-xs);color:var(--color-warning, #f59e0b);text-transform:uppercase;letter-spacing:.1em;border:1px solid var(--color-warning, #f59e0b);padding:4px 8px;font-weight:var(--font-weight-semibold)}.storage-quota-advisory-hint{font-size:var(--font-size-xs);color:var(--color-text-dim);margin:4px 0 0}.migration-progress{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border-dim)}.migration-progress-bar{width:100%;height:6px;background:var(--color-border-dim);overflow:hidden;margin-top:var(--spacing-sm)}.migration-progress-fill{height:100%;background:var(--color-green-primary);transition:width .3s ease}.migration-progress-text{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin:4px 0 0}.migration-complete{color:var(--color-text-primary)}.migration-failed-text{font-size:var(--font-size-xs);color:var(--color-error, #ef4444);margin:4px 0 0}.migration-controls{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm);flex-wrap:wrap}.migration-cancel-confirm{margin-top:var(--spacing-xs)}.migration-cancel-text{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.vault-settings{padding:var(--spacing-md) 0}.vault-settings-section{padding-bottom:var(--spacing-md);margin-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border-dim)}.vault-settings-label{display:block;font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:lowercase;margin-bottom:4px;margin-top:var(--spacing-sm)}.vault-settings-input{background:transparent;border:1px solid var(--color-border-dim);color:var(--color-text-primary);font-family:var(--font-family-mono);font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm);width:120px;box-sizing:border-box}.vault-settings-input:focus{outline:none;border-color:var(--color-border);box-shadow:0 0 0 1px var(--glow-green)}.vault-settings-input:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.vault-settings-radio-group{border:none;padding:0;margin:var(--spacing-sm) 0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.vault-settings-radio-option{display:flex;flex-direction:column;gap:4px}.vault-settings-radio-option label{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer}.vault-settings-radio-option input[type=radio]{accent-color:var(--color-green-primary);width:14px;height:14px}.vault-settings-radio-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-secondary)}.vault-settings-radio-option input[type=radio]:checked+.vault-settings-radio-label{color:var(--color-text-primary)}.vault-settings-description{font-size:var(--font-size-xs);color:var(--color-text-dim);margin:4px 0 0;padding-left:0}.vault-settings-radio-option .vault-settings-description{padding-left:22px}.vault-settings-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.vault-settings-save-btn{background:var(--color-green-primary);color:#000;border:none;font-family:var(--font-family-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:var(--spacing-xs) var(--spacing-md);cursor:pointer}.vault-settings-save-btn:disabled{opacity:.3;cursor:not-allowed}.vault-settings-save-btn:hover:not(:disabled){opacity:.9}.vault-settings-save-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:2px}.vault-settings-reset-btn{background:transparent;border:1px solid var(--color-border-dim);color:var(--color-text-dim);font-family:var(--font-family-mono);font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-md);cursor:pointer}.vault-settings-reset-btn:hover{border-color:var(--color-border);color:var(--color-text-secondary)}.vault-settings-reset-btn:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:1px}.vault-settings-success{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-green-primary);margin-top:var(--spacing-sm)}.vault-settings-error{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-error, #ef4444);margin-top:var(--spacing-sm)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.error-fallback{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--color-background);color:var(--color-text-primary);font-family:var(--font-family-mono);padding:2rem}.error-fallback__container{text-align:center;max-width:480px}.error-fallback__icon{font-size:1.5rem;color:var(--color-error, #ef4444);margin-bottom:1.5rem;opacity:.7}.error-fallback__title{font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:var(--color-text-primary)}.error-fallback__message{font-size:.875rem;color:var(--color-text-secondary);margin-bottom:2rem;line-height:1.6}.error-fallback__reload{background:transparent;border:1px solid var(--color-green-primary);color:var(--color-green-primary);font-family:var(--font-family-mono);font-size:.875rem;padding:.625rem 1.5rem;cursor:pointer;transition:background .15s,color .15s}.error-fallback__reload:hover{background:var(--color-green-primary);color:var(--color-background)}.error-fallback__reload:focus-visible{outline:1px solid var(--color-green-primary);outline-offset:2px}:root{--color-black: #000000;--color-green-primary: #00D084;--color-green-dim: #006644;--color-green-darker: #003322;--color-green-glow: #00D08466;--color-toolbar-bg: #001108;--color-nav-active: #001a11;--color-error: #EF4444;--color-error-dim: #7F1D1D;--color-warning: #F59E0B;--color-warning-dim: #78350F;--color-background: var(--color-black);--color-border: var(--color-green-primary);--color-border-dim: var(--color-green-darker);--color-text-primary: var(--color-green-primary);--color-text-secondary: var(--color-green-dim);--color-text-muted: #8b9a8f;--color-text-dim: #4a5a4e;--font-family-mono: "JetBrains Mono", monospace;--font-size-xs: 10px;--font-size-sm: 11px;--font-size-md: 14px;--font-size-lg: 18px;--font-size-xl: 24px;--font-weight-normal: 400;--font-weight-semibold: 600;--font-weight-bold: 700;--spacing-xs: 8px;--spacing-sm: 12px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--glow-green: 0 0 10px var(--color-green-glow);--border-thickness: 1px;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-family-mono);font-size:var(--font-size-sm);line-height:1.5;font-weight:var(--font-weight-normal);color:var(--color-text-primary);background-color:var(--color-background);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh}#root{width:100%;min-height:100vh}a{color:var(--color-text-primary);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--color-green-primary);outline-offset:2px}::selection{background-color:var(--color-green-primary);color:var(--color-black)}
